1

我已经将我的 Rails 3.2 应用程序更新到 4.0 版本并且偶然发现了一个问题。

当我使用config.assets.compile = false选项运行该站点时,它不会加载任何资产。我已经尝试过rake assets:precompile,它会在 上编译资产public/assets,但站点不会加载其中的任何一个。我已经得到application.jsapplication.css包含在我的布局中,但是当我检查页面的来源时,据说找不到它们。

当我运行该站点时,config.assets.compile = true一切都运行良好,但我读到关闭它会带来更高的性能,所以我需要让它工作。提前致谢。

UPD:我发现如果我使用这个命令RAILS_ENV=production bundle exec rake assets:precompile一切正常。问题是为什么rake assets:precompile命令不起作用?

UPD2:对于那些有同样问题的人,这里是解释。
常规rake assets:precompile为在开发模式下运行的应用程序编译资产。在开头指定RAILS_ENV=productionpart 使命令编译用于生产模式的资产,该bundle execpart 不是必需的。所以最终的命令看起来像这样RAILS_ENV=production rake assets:precompile:也许这很明显,但我花了一段时间才明白。谢谢。

4

0 回答 0