问题现象
Rails版本,升级到Rails 3.0以后,当rails server -e=production时,报错ActionView::Template::Error (application.css isn't precompiled):
这是因为3.0后开始采用assets pipeline,所有**.css.scss、**.js.coffee文件都需要预编译,
生产环境下默认不会进行编译,而开发环境下默认会先进行编译,所以开发环境不报错。
解决方法
方法一:修改production.rb
config.assets.compile = true #默认为false
修改为true后,以后请求资源时如果发现没有编译会重新编译。但这样会影响效率,建议不要这样做。
方法二:手工进行编译
rake assets:precompile
然后重启rails server。这是推荐的做法。
升级到Rails3.0后,在生产环境中遇到样式表未预编译的问题。本文介绍了两种解决方案:一是修改配置文件允许运行时编译,二是预先执行编译命令。
609

被折叠的 条评论
为什么被折叠?



