2012-09-03 59 views
4

我的gemfile最近升級了我的指南針軌道寶石。我開始收到以下錯誤(生產在Heroku上唯 - 能正常工作本地),並已粘貼了幾個小時:指南針軌道寶石不在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 /。

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"; 

我一直在嘗試我找到的所有解決方案,目前爲止沒有任何運氣

什麼都伸出來了?

回答

0

我將我的導軌升級到3.2+,並最終移動資產組以外的指南針導軌以使其工作。我真的不明白它爲什麼會起作用,但它似乎有伎倆。

5

是的,移動指南針導軌:資產工程,但不是一個理想的解決方案。

通過檢查從推到Heroku的輸出,我發現

Preparing app for Rails asset pipeline 
Running: rake assets:precompile 
rake aborted! 

但它與

RAILS_ENV=production rake assets:precompile 

本地編譯的解決方案是不是預編譯的資產何時實例數據庫。在配置/ application.rb中:

config.assets.initialize_on_precompile = false 

看到羅盤Rails項目這個問題:

https://github.com/Compass/compass-rails/issues/19

+2

那動人的指南針護欄出來的原因是:資產的工作原理是,因爲Heroku的試圖即時編譯樣式表,因爲'rake assets:precompile'失敗。然而,它絕對只是一個解決方案 - Rimian的解決方案使預編譯工作成爲可能,而compass-rails應該保留在:assets組中。 –