部署到 Heroku Cedar 堆栈上的 Rails 应用程序。
我想在运行时的给定点将资产重新加载到管道中。
我很熟悉config.cache_classes = false
。但是,在生产中,修改资产后不会重新加载资产。关于此异常原因的任何想法?
部署到 Heroku Cedar 堆栈上的 Rails 应用程序。
我想在运行时的给定点将资产重新加载到管道中。
我很熟悉config.cache_classes = false
。但是,在生产中,修改资产后不会重新加载资产。关于此异常原因的任何想法?
检查以下内容。
确保您的 production.rb 设置包括:
1 - 您的生产配置可能不正确。如果您从早期的 3.1 候选版本开始,并且一直在更新,那么这种情况尤其可能发生。production.rb 的建议选项在 rc4 和 3.1.0 版本之间发生了很大变化。
#Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false
#Don't fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = false
#Generate digests for assets URLs
config.assets.digest = true
2 - 您可能忘记了预编译资产
RAILS_ENV=production rake assets:precompile
3 - 您可能忘记重新启动 Web 服务器以获取 production.rb 中的更改