2011-12-19 48 views
0

默認情況下(至少使用腳手架),Rails添加指向/app/assets/stylesheets目錄中所有樣式表的鏈接。我想爲組織提供多個較小的樣式表,但只需鏈接到一個導入其餘的樣式表,以保持組織性,並儘量減少HTTP請求。如何在Rails中停止樣式表自動鏈接?

是否有辦法禁用此自動包含,無論是通過配置資產管道還是更改它們在佈局本身中的包含方式?

FWIW,我使用stylesheet_link_tag "application"包括application.html.haml的主樣式表。

回答

4

您可以通過修改application.css(.scss)文件來完成此操作。

在該文件中會有以下行:

require_tree . 

簡單地刪除和替換它與包括您需要。

application.css

require file1 
require nested/folders/file2 

然後你就可以有另一個文件

的main.css

require file2 
require file3 

並分別包括他們:

stylesheet_link_tag "application" 
stylesheet_link_tag "main" 

stylesheet_link_tag也可以接受一個數組,如果由於某種原因,您希望將css文件加載到相同的位置,但使用單獨的HTTP請求。

stylesheet_link_tag ["application", "main"] 

帶有要求的文件被稱爲manifest files