如何使Rails SASS生成.css.erb文件而不是.css文件

时间:2015-08-21 15:23:36

标签: ruby-on-rails sass asset-pipeline

我之前从未做过这样的事情,所以我不确定如何开始这样做。 Rails将我的所有SASS文件编译成一个站点范围的css文件。我希望将此文件编译为.css.erb文件。

然后是更疯狂的部分:我还想在编译过程中添加一个任务,它会查找一个特定的标记(可能只是一个字符串:“token”)并用ruby / rails代码替换它。所以如果sass通常会编译成这个css:

color: "token";

我希望它能编译成这个:

color: <%= current_user.primary_color %>;

有没有办法修改或添加到sass编译过程?或者这是一个白日梦?

关于此请求的背景:

我有一个网站构建器,用户可以在其中选择6种自定义颜色,这些颜色将出现在其网站的不同位置。颜色保存为字符串(如"#123456")。但由于每个用户都可以随时更改颜色,因此我需要至少一个css文件的灵活性不包含在SASS中,因此它可以包含rails代码以从数据库中提取颜色(如上所述)。我真的希望我能把这个噩梦融入管道,所以它更自动化。

1 个答案:

答案 0 :(得分:0)

一种简单的方法是首先将scss.erb文件放入数据库,当你从数据库中获取它时,它将像编译的css一样。