2014-04-25 40 views
0

我有一個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

但是所有這些建議都幫助了我。

+0

您是否運行過資產:預編譯?它在/ public/dev-assets目錄下生成靜態資產。您需要刪除/ public/dev-assets以動態生成js。 – kengo

+0

是的,我確實(用於舞臺和製作)。我總是運行耙子資產:首先清理。事實上,當這一切開始時,我只是跑耙子資產:清理以消除開發中的可能性。 – user3750746

+0

您是否檢查開發環境中的/ public/dev-assets目錄是否真的是空的? – kengo

回答

0

This is not a Rails problem。 Rails正在提供正確的文件,通過在瀏覽器中獲取文件進行驗證:

http://localhost:3000/dev-assets/app.js 
相關問題