我有一个成功的 Rails 3.0.x 项目,在 Gemfile 中有以下 Gems 子集:
gem "compass"
gem "haml"
gem "haml-rails"
gem "html5-boilerplate"
我今天尝试升级到 Rails 3.1 并保留所有功能,但这样做有很多问题。我还没有找到在生产模式下对我有用的配置,所以我现在正在使用开发模式。
我在这里遵循了以下建议:
production.rb
, development.rb
和 application.rb
更新 Assets 管道的配置。但没有接触 compass、sass 和 html5-boilerplate。 ie_html
在生产模式下不可用。 Gemfile 中的更改被记录下来 ie_html
必须是全局的. group :assets
中的一些 gem 阻止不成功。大多数时候,例如之间的依赖关系。 compass 和 sass,或 compass 和 html5-boilerplate 无法实现。 所以我的问题是:是否有一个有效的 Gemfile 允许一起使用 Haml、Sass、Compass、Html5-Boilerplate,当然还有 Rails 3.1?
新 Gemfile 在开发模式下工作,但不在生产模式下:
gem "haml-rails"
group :assets do
gem 'sass-rails', " ~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
gem 'compass', '~> 0.12.alpha.0'
gem "html5-boilerplate"
end
gem 'jquery-rails'
我试图创建一个新的 Rails 3.1 应用程序,并在那里添加了一个图像资源。一切正常,因此开发模式和生产模式之间没有区别。在我迁移的应用程序中,我现在具有以下状态:
最佳答案
我让它在 Heroku Cedar 上工作。
gem "rails", "~> 3.1.0"
gem 'sass-rails', "~> 3.1.0"
group :assets do
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
gem 'compass', '~> 0.12.alpha.0'
gem 'html5-boilerplate'
end
但在
git push heroku
之前首先在本地预编译:RAILS_ENV=production bundle exec rake assets:precompile
然后将所有公共(public)/ Assets 添加到您的 git 存储库并提交。然后:
git push heroku master
Heroku 将检测到
public/assets/manifest.yml
文件并仅使用这些文件。这对我有用,所以应该有用!干杯
关于ruby-on-rails-3.1 - 在生产模式下是否有适用于 Rails 3.1 以及 Scss、Haml、Compass 和 HTML-Boilerplate 的有效 Gemfile?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7325562/