2016-09-27 91 views
-1

我有一個類似的問題this question,但沒有任何解決方案都爲我工作。的ActionController :: RoutingError在Rails的開發環境

在我的Rails 4.0.3應用程序,我一直得到以下錯誤:

ActionController::RoutingError (No route matches [GET] "/assets/javascripts/underscore-min.map") 
vendor/bundle/ruby/2.1.0/gems/actionpack-4.0.3/lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call' 
    vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.0.229/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call' 
    vendor/bundle/ruby/2.1.0/gems/actionpack-4.0.3/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' 
    vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.0.229/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call' 

我也偶爾會試圖加載其他資產(圖片等)時,得到類似的錯誤,但並不適用於所有圖片;這是最一致的。在我的本地服務器上,在開發環境中發生此問題。

我試過在我的development.rb文件中設置config.serve_static_assets = true,以及在有Rails版本問題的情況下設置config.serve_static_files。我也試過運行rake assets:precompile

如果有人有任何想法,我將不勝感激!

+0

請讓我們知道到底哪個文件導致此錯誤。 –

+0

或者顯示在你的視圖中嵌入圖像的代碼。 –

+0

我已經爲這個錯誤添加了堆棧跟蹤的前幾行......這有幫助嗎? –

回答

3

每個JavaScript都包含源地圖文件。所以基本上這個錯誤表明我們的JavaScript的sourcemaps文件沒有加載到資產管道中。我認爲我們不需要在資產管道中加載.map文件,因此您可以從JavaScript文件中刪除.map文件行。你可以在你的JavaScript文件中找到這些代碼。

/* 
//@ sourceMappingURL=yourjs.min.js.map 
*/ 

資產管道中的一個JavaScript文件包含此.map文件映射。刪除此行後,此錯誤將消失。

編號:what is .map file

我希望這個答案解決您的問題

感謝

+0

像魅力一樣工作。我評論了源圖的參考,並且我的問題已修復。謝謝ABPrime! 另外我很欣賞鏈接到.map文件主題的參考資料。 :) –

+0

@NicolasGarcia:我的榮幸。請接受答案。 –