我有一個Rails 3.2應用程序,並且在其中有一個Javascript文件(應用程序),它似乎在特定的,過去「卡住」 ,版本。我已經多次更新了這個文件,顯着改變了它的內容,並且確保每次都保存文件 - 沒有任何效果。我已經多次重啓機器(至少應該清除蜘蛛網),但都無濟於事。我在思考如何解決這個問題。Rails 3.2繼續服務舊版本的JavaScript資產文件 - 開發環境
我可以看到該文件爲被服務,我每次訪問的頁面:
入門GET「/dev-assets/app.js?body=1」爲172.16.0.12在2014- 04-24 16時49分36秒-0700 擔任資產/app.js - 200 OK(1毫秒)
再後來又在同一個測試運行(不修改 - 如我所料):
開始GET 「/dev-assets/app.js?body=1」for 172.16.0.10 at 2014-04-24 16:51:31 -0700 Served asset /app.js - 304 Not Modified(0ms)
但仍然它有舊的內容(其中,有一個調用'location.assign'已被刪除 - 所以行爲應該是明顯不同於我所看到的。
我在development.rb文件這些設置(但這不是完整的文件):
config.cache_classes = false
# Log error messages when you accidentally call methods on nil.
config.whiny_nils = true
# Show full error reports and disable caching
config.consider_all_requests_local = true
config.action_controller.perform_caching = false
# From Rails issue 10091 - attemp to keep from loading scripts
# multiple times
config.assets.prefix = "/dev-assets"
# Do not compress assets
config.assets.compress = false
# Expands the lines which load the assets
config.assets.debug = true
# Workaround documented in Rails issue 4145
config.serve_static_assets = false
任何人有任何想法,我怎麼能清除這個舊文件?
注意 - 這是非常相似的:
Clear the cache from the Rails asset pipeline
但是所有這些建議都幫助了我。
您是否運行過資產:預編譯?它在/ public/dev-assets目錄下生成靜態資產。您需要刪除/ public/dev-assets以動態生成js。 – kengo
是的,我確實(用於舞臺和製作)。我總是運行耙子資產:首先清理。事實上,當這一切開始時,我只是跑耙子資產:清理以消除開發中的可能性。 – user3750746
您是否檢查開發環境中的/ public/dev-assets目錄是否真的是空的? – kengo