根据Heroku documentation:
Heroku现在缓存50mb的tmp / cache / assets,这是一个缓存 用于存储中间文件的资产管道的目录。这个 意味着未来的资产编制将因为没有而更快 重新计算这些文件。
我的问题是如何手动重置或删除此缓存,以便我的所有资产都必须再次进行预编译?我尝试了heroku run console
和Rails.cache.clear
,但它没有用。我想重置缓存的原因是我更改了config.action_controller.asset_host
文件中的production.rb
,但由于缓存,Heroku没有接收到更改。
答案 0 :(得分:14)
答案 1 :(得分:12)
希望这会有所帮助。要在开发中更改 Heroku ,请在提交之前运行rake assets:clean
然后rake assets:precompile RAILS_ENV=production --trace
并推送到 Heroku
答案 2 :(得分:4)
要清理资产,请运行:
rake assets:clobber
答案 3 :(得分:1)
我遇到了这个问题,然后我意识到我忘了配置在生产环境中提供静态资产,在config / enviroments / production.rb中
Could not parse object '890dbfa4a5479cf849f2e2b525b9609a26e19573'
答案 4 :(得分:0)
作为 this Stack Overflow answer explains,config.assets.version
为此目的而存在。
很可能,您会在 config/application.rb 或 config/initializers/assets.rb 中找到它。下次部署到任何环境时,将其更改为您想要破坏缓存的任何值。