我收到了这个奇怪的错误。我已将kids.css.less添加到我的application.css中。
如果我在config.assets.precompile
数组中添加application(and/or environment file)
,我可以避免此错误,但这不是我想要使用的解决方案
这是我的app.css.less:
/*
*= require_self
*= require kids.css.less
*/
@import "theme_venera.less";
.white-card {
.kid-word {
h5 { font-size: @fontSizeSmall;}
}
}
我在kids.css中导致的结果不是预先编译的。
我缺少什么?
UPD:当我只部署在我的生产服务器上时,会发生此错误。在我的开发环境中,我拥有“实时”资产。我正在使用capistrano进行部署,我的脚本包含资产:预编译
答案 0 :(得分:0)
在生产模式下运行rake assets:precompile
以编译和压缩样式表,然后运行该应用程序。
答案 1 :(得分:0)
在开发中,您应该进行资产调试(禁用管道),以避免链接器连接并缩小您的资产:
config.assets.debug = true
如果不这样做,Rails希望您的资产得到编译:
rake assets:precompile
如果您不预先编译它们,如果您启用它,它会尝试根据请求编译它们:
config.assets.compile = true
否则,如果你没有禁用管道,不要自己编译它们,并且不允许Rails这样做,它会给你带来的错误。在生产中,通常的做法是预编译它们。实时编译会增加很大的开销,所以你不应该依赖它。但是,如果你在预编译后启用它就可以了:Rails将首先使用你的编译,如果它找不到它正在寻找的资产,那么它将把它编译为“紧急程序”以避免抛出错误。
您在此处拥有所有信息: