【问题标题】:Can I mix Ruby, Sinatra, and Grunt我可以混合使用 Ruby、Sinatra 和 Grunt
【发布时间】:2015-08-21 13:12:02
【问题描述】:

这可能更像是一个 Ruby 问题,因为我认为它也适用于 Rails,但是我可以混合使用 Ruby 和 GruntJS 吗?我想用 Grunt 编译 Sass 和 Coffeescript。我知道有 ruby​​ gems - 事实上 Grunt Sass 插件甚至使用 Ruby gem - 但我已经在其他项目中使用 Grunt 很长时间了,我觉得它真的很舒服。

这是我的文件结构的基本轮廓:

|-- app
|   |-- models
|   |-- views
|   |-- controlers
|
|-- public
|   |-- coffeescript
|   |-- css
|   |-- js
|   |-- sass
|
|-- package.json
|-- Gruntfile.coffee
|-- Gemfile

请注意,我遗漏了一些文件和文件夹,因为这只是一个示例。

我做了一点谷歌搜索,但没有找到问题的好答案。我正在寻找的是最佳实践。我还要注意我添加了一些命令,例如npm start,它启动了一个用于测试的开发 Web 服务器。这让我的生活轻松了很多。有没有其他人混合过 Sinatra 和 GruntJS,这可以接受吗?

如需完整示例,请查看my github project.

【问题讨论】:

    标签: ruby-on-rails ruby node.js gruntjs sinatra


    【解决方案1】:

    我没有亲自使用过 Sinatra 或 Grunt,所以请谨慎对待我的建议。但是,我已将 Rails 配置为使用 Gulp 提供资产。

    根据我在 Sinatra 文档中阅读的内容,Sinatra 自动在“公共”文件夹中提供静态文件,无需任何额外配置。

    我环顾四周,实际上并没有看到更新的 Grunt gem。我配置 Rails 和 Gulp 工作的方式是让 Gulp 与 Rails 同时运行,并且在我在生产中启动服务器之前运行 Gulp 构建任务。这样一来,Rails 就可以获取已编译的资产。我认为类似的设置可能适合您。

    【讨论】:

    • 这就是我目前正在做的事情。唯一的区别是我通过 npm 使用 Grunt 而不是 gem。本质上,我是在混合 Node 和 Ruby。 Node 仅用于编译,而不是实际用于实际网站。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    • 2012-01-16
    • 1970-01-01
    • 2018-05-08
    相关资源
    最近更新 更多