2012-11-26 136 views

回答

1

Rails 3.1+中的資產管道將通過一系列基於文件名的預處理器發送您的資產。例如,如果您有stylesheet.css.scss,則通過SASS處理器將文件發送到CSS中。

當您將擴展連接在一起時,您的樂趣就開始了,以便通過多個處理器發送您的資產。在您的情況下,您可以將您的資產stylesheet.css.scss.erb命名爲首先通過ERB發送,然後是SASS。下面是什麼,可能看起來像一個小例子:

.some_class { 
    background-image: url(<%= asset_path('image.png') %>); 
    color: <%= some_ruby_code_to_generate_a_color %>; 
} 

所以,當你在一個正常ERB視圖模板會,你可以簡單地拋出紅寶石<%= %>標籤爲您的資產時,資產將被運行之間的代碼正在編譯(或預編譯)。

關於縮小,這只是資產管道通過一些配置選項來處理的。查看Rails guide for the asset pipeline瞭解更多詳情。

+0

謝謝。很好的見解 –