13

在這裏堅果。我正在開發一個rails應用程序,並且使用twitter-bootstrap-rails gem爲了在我的應用程序中包含Twitter Bootstrap樣式。這個gem在app/assets/stylesheets中生成一個名爲'bootstrap_and_overrides.css.less'的文件,我一直使用它來修改一些引導變量幷包含我自己的CSS覆蓋。Rails與Twitter Bootstrap:仍在服務舊資產

一切都工作得很好,直到今天。出於某種原因,我今天對這個文件所做的更改已經保存到文件中,但Rails仍然在服務舊版本的文件!我搜索並沒有發現任何地方的文件的預編譯版本(沒有在公共/資產)...只有在我修改的資產/樣式表中的一個。就應用程序中的目錄而言,一切都很好,但是當我啓動rails服務器,加載頁面,並使用元素檢查器查看樣式表時,它使用的是舊版本的'bootstrap_and_overrides.css.less'與我已刪除的規則。我在瀏覽器中關閉了緩存,並在4個不同的瀏覽器中嘗試了它,所以我非常肯定這不是瀏覽器緩存的結果。

rails資產管道似乎只是提供了一個不存在的文件版本!有沒有人有任何想法,爲什麼這可能會發生?

回答

31

修正了它。

資產管道存儲在tmp/cache中的緩存版本。

我跑rake tmp:clear,其中刪除了所有的文件在那裏,然後軌道送達* bootstrap_and_overrides.css.less *的版本,我想。

爲什麼緩存版本突然停止更新超出了我。 Arrghhhh!

+3

修復了一個我就是這樣的寶石錯誤!謝謝,我完全不知道這個耙子任務。 – 2013-01-09 21:01:35

+1

謝謝。我對bootstrap-sass也有同樣的問題。寶石已更新爲運行最新版本的引導程序,但我的Rails應用程序仍在服務舊版本。 – 2013-03-20 18:31:22

+0

它看起來像'rake tmp:cache:clear'起作用。似乎仍然存在潛在的資產管道漏洞。 – 2014-04-28 22:55:46

相關問題