2011-12-01 81 views
4

我正在開發一個處理公共區域(截至今天,靜態頁面)的Rails應用程序,以及具有認證的私有空間等。這兩個都是獨立開發的。第一款採用手工製作,後者採用twitter bootstrap。如何使用rails資產管道有多個輸出文件?

在生產中,rails會將我的資產編譯爲一個文件,並且某些樣式相互衝突,從而導致公共區域中包含Twitter Bootstrap的某些元素...並非我想要的。

有沒有辦法配置資產管道,所以編譯時,有兩個輸出?經典的application.css和front.css?

回答

7

是的,有。你需要有兩個清單文件。我會打電話給公衆一個application.css和私人的admin.css,因爲這是一個常見的Rails約定。

application.css應該要求所有的公共CSS文件,並且您將需要刪除require_tree指令,因爲這是您不需要的東西。

第二個清單文件admin.css將包含您希望用於私人方面的內容。

然後,您可以使用Rails助手在佈局中引用這些文件。

您將需要添加admin.css(和.js文件,如果有的話)的預編譯數組這在生產中正常工作:

 
config.assets.precompile += ['admin.js', 'admin.css'] 
+0

這似乎並不當我使用工作它添加第二個js清單 – ahnbizcad