问题描述
Readme of Sprockets 4 的“使用 ERB 调用 Ruby”部分说
此行为仅适用于环境变量,如果您从其他地方(例如数据库)提取值,则必须手动使缓存无效才能看到更改。
如何手动使缓存失效?
问题背景
我有一个包含 style.sass.erb
的 <%= Time.Now.year%>
文件,因此我可以显示版权声明。
当我使用 style.css
控制时间测试加载 Timecop
资产时,它在第一个请求中返回正确的年份,但在不同年份的第二个请求中返回正确的年份。
在请求之间,我在做
Rails.application.assets.cache.clear
Rails.application.assets_manifest.environment.cache.clear
FileUtils.rm_rf("#{Rails.root}/tmp/cache/assets")
FileUtils.rm_rf("#{Rails.root}/public/assets")
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)