我的gemfile最近升级了我的compass-rails gem.我开始收到以下错误(仅在heroku上生成 – 在本地工作正常),并且已经坚持了几个小时:
Completed 500 Internal Server Error in 14284ms 2012-09-03T20:53:25+00:00 app[web.1]: 2012-09-03T20:53:25+00:00 app[web.1]: ActionView::Template::Error (File to import not found or unreadable: compass/css3. 2012-09-03T20:53:25+00:00 app[web.1]: Load path: Sass::Rails::Importer(/app/app/assets/stylesheets/application.css.scss)
我认为问题的一部分必须在/ app / app /出现在这里的路径中 – 但我不明白为什么.当我将下面的罗盘配置更改为“资产/样式表”时,我仍然会在跟踪错误中看到/ app / app /.
production.rb:
# Don't fallback to assets pipeline if a precompiled asset is missed config.assets.compile = false
compass.rb
# Require any additional compass plugins here. project_type = :rails sass_dir = "app/assets/stylesheets"
的Gemfile
group :assets do gem 'sass-rails' gem 'coffee-rails' gem 'uglifier','1.2.4' gem 'yui-compressor','0.9.6' gem 'compass-rails' end
在我的application.css.scss文件中:
@import "compass/css3";
到目前为止,我一直在努力寻找我能找到的所有解决方案
什么东西伸出来?
解决方法
是的,将罗盘轨移出:资产有效,但不是理想的解决方案.
检查通过推送到heroku的输出我发现
Preparing app for Rails asset pipeline Running: rake assets:precompile rake aborted!
但它正在本地编译
RAILS_ENV=production rake assets:precompile
解决方案是在预编译资产时不实例化数据库.在config / application.rb中:
config.assets.initialize_on_precompile = false
在compass-rails项目中查看此问题: