如何重置Heroku Rails4资产管道缓存

时间:2014-04-09 22:54:31

标签: ruby-on-rails caching heroku ruby-on-rails-4

根据Heroku documentation

  

Heroku现在缓存50mb的tmp / cache / assets,这是一个缓存   用于存储中间文件的资产管道的目录。这个   意味着未来的资产编制将因为没有而更快   重新计算这些文件。

我的问题是如何手动重置或删除此缓存,以便我的所有资产都必须再次进行预编译?我尝试了heroku run consoleRails.cache.clear,但它没有用。我想重置缓存的原因是我更改了config.action_controller.asset_host文件中的production.rb,但由于缓存,Heroku没有接收到更改。

5 个答案:

答案 0 :(得分:14)

要清除Heroku的资产缓存,您需要Heroku Repo plugin到Heroku工具带。安装它,然后使用命令

heroku repo:purge_cache

清除缓存后部署。

答案 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 explainsconfig.assets.version 为此目的而存在。

很可能,您会在 config/application.rb 或 config/initializers/assets.rb 中找到它。下次部署到任何环境时,将其更改为您想要破坏缓存的任何值。