使用Twitter Bootstrap的Rails:仍在提供旧资产

And*_*rew 13 web-applications ruby-on-rails browser-cache asset-pipeline twitter-bootstrap

在这里坚果.我正在开发一个rails应用程序,我正在使用twitter-bootstrap-rails gem以便在我的应用程序中包含Twitter Bootstrap样式.这个gem在app/assets/stylesheets中生成一个名为'bootstrap_and_overrides.css.less'的文件,我一直用它来修改一些引导变量并包含我自己的CSS覆盖.

一切都很好,直到今天.出于某种原因,我今天对此文件所做的更改将保存到文件中,但Rails仍在提供该文件的旧版本!我搜索过,发现文件中没有任何预编译版本(公共/资产中没有)...只有我修改过的资产/样式表中的那个.对于应用程序中的目录,一切看起来都很好,但是当我启动rails服务器,加载页面,并使用元素检查器查看样式表时,它使用旧版本的'bootstrap_and_overrides.css.less'我已删除的规则.我已经在我的浏览器中关闭了缓存,并在4种不同的浏览器中尝试了它,所以我很确定这不是浏览器缓存的结果.

rails资产管道似乎只提供不存在的文件版本!有没有人知道为什么会发生这种情况?

And*_*rew 31

固定它.

资产管道将缓存版本存储在tmp/cache中.

我跑了rake tmp:clear,删除了那里的所有文件,然后 rails提供了我想要的*bootstrap_and_overrides.css.less*版本.

为什么缓存版本突然停止更新是超出我的.Arrghhhh!

  • 这修复了我刚才这样的宝石虫!谢谢,我完全没有意识到那个佣金任务. (3认同)