任何想法为什么Rails的资产:预编译会尝试编译一个sass部分_accounts.css.sass,当它没有在我的预编译列表中列出?
application.rb中
config.assets.enabled = true
config.assets.initialize_on_precompile = true
config.assets.precompile += ['*.js', 'controllers/*.js', 'controllers/admin/*.js', 'controllers/shared/*.js', '*.coffee', 'application.css.sass', '*.css', '*.png', '*.jpg', '*.scss.erb']
_accounts.css.sass仅包含在application.css.sass中,其中包含:
@import "account"
错误是:
Undefined mixin 'column'. (in _account.css.sass)
...因为它使用指南针,但application.css.sass在导入_accounts.css.sass之前导入指南针,因此部分不需要导入指南针。
答案 0 :(得分:2)
要预编译的事物列表中的文件名/模式不是指要预编译的事物的文件名。相反,它们引用预编译的结果,即要求预编译'* .css'意味着预编译任何如果编译将导致.css文件。特别是,像_account文件这样的.css.sass文件将被预编译。