资产清单文件可以是咖啡还是咖啡

时间:2012-05-31 06:54:53

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

当我部署到生产环境中时,我发现一些清单文件未经过预编译。我意识到这些清单文件都有扩展名,如.sass或.js.coffee

我确实将这些内容包含在application.rbconfig.assets.precompile << 'admin.js.coffee'

那么清单文件不能是普通的css / js以外的东西吗?

更新

我有一个fish.sass,做config.assets.precompile << 'fish.sass'不会做任何事情。但是,如果我config.assets.precompile << 'fish.css',它将正确编译。似乎很奇怪我必须指定一个不存在的文件才能使它工作。

2 个答案:

答案 0 :(得分:1)

清单文件可以包含其他文件,例如sass,coffee。部署应用时,您需要运行rake assets:precompile。这将预编译所有资产文件。

如果您有其他文件,则需要在production.rb

中添加
config.assets.precompile += %w( admin.js, admin.css )

确保您在produ.rb

中也有此功能
config.assets.compile = true

您必须使用扩展名.js.css命名清单文件,然后在production.rb内添加相同的名称。

答案 1 :(得分:1)

文件fish.css确实存在。在编译资产之前,rails将查看您的文件名,并根据其扩展名解析文件。所以sass文件将以css,coffee in js等呈现。