2012-02-02 136 views
1

所以我的應用程序/樣式表/ screen.css.sass的Rails 3.1資產管道CSS manifest.yml

對生產的路徑變得東西/assets/screen-md5hash.css

該文件得到服務,但它不會出現在manifest.yml中,也不會出現在public/assets文件夾中(因此我認爲它可以通過Rails獲得服務,而不是Apache)。

爲什麼不在那裏?

+0

manifest.yml中的其他資產是否公開? – 2012-02-02 16:24:21

回答

4

你是對的 - 文件由Sprockets服務。

這表明你的管道配置設置有幾個問題。

首先,你可能仍然有

config.assets.compile = true 

production.rb

它應該是假的。如果它是真的,那麼任何未預編譯的資源(以及在公共目錄中)都由Sprockets服務。

第二個是如果你想引用任何非命名爲application的js或css文件,那麼你必須將該文件添加到預編譯數組中,以便它被預編譯用於生產。

它從清單中缺失的事實表明它沒有預編譯。

你應該application.rb補充一點:

config.assets.precompile += ['screen.css'] 

如果這是一個升級程序,我可以建議你檢查對last section of the pipeline guide所有的管道配置設置。