我已经将我的 Rails 3.2 应用程序更新到 4.0 版本并且偶然发现了一个问题。
当我使用config.assets.compile = false
选项运行该站点时,它不会加载任何资产。我已经尝试过rake assets:precompile
,它会在 上编译资产public/assets
,但站点不会加载其中的任何一个。我已经得到application.js
并application.css
包含在我的布局中,但是当我检查页面的来源时,据说找不到它们。
当我运行该站点时,config.assets.compile = true
一切都运行良好,但我读到关闭它会带来更高的性能,所以我需要让它工作。提前致谢。
UPD:我发现如果我使用这个命令RAILS_ENV=production bundle exec rake assets:precompile
一切正常。问题是为什么rake assets:precompile
命令不起作用?
UPD2:对于那些有同样问题的人,这里是解释。
常规rake assets:precompile
为在开发模式下运行的应用程序编译资产。在开头指定RAILS_ENV=production
part 使命令编译用于生产模式的资产,该bundle exec
part 不是必需的。所以最终的命令看起来像这样RAILS_ENV=production rake assets:precompile
:也许这很明显,但我花了一段时间才明白。谢谢。
问问题
108 次