2012-11-26 137 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

谢谢。很好的见解 –