2016-04-22 64 views
0

我在Rails 4.2.2應用程序中使用(凌亂)Bootstrap主題。當我輸入localhost:3000時,我的index.html.erb視圖中的所有內容都完美加載。當我嘗試在另一個頁面上使用「後退」按鈕(root_path)查看同一個index.html.erb視圖時,我得到了localhost:3000,但只有導航欄加載了,並且在服務器中出現了以下錯誤日誌。當我刷新同一頁(localhost:3000)時,一切正常。Rails4:資產管道(javascripts)路由錯誤

我運行bundle exec rake assets:clean assets:預編譯並重新啓動服務器,沒有任何更改。

我在做什麼錯?我不明白爲什麼一些JS文件正在工作,而且我得到這兩個特定的JS文件的錯誤 - 或者爲什麼一切正常刷新。

謝謝。

PS編輯:我正在部署到Heroku,但在開發和Heroku都失敗了,所以希望在dev中修復應該足夠了。

服務器日誌

ActionController::RoutingError (No route matches [GET] "/javascripts/modernizr-custom.js"): 
. 
. 
. 
ActionController::RoutingError (No route matches [GET] "/js/jquery.magnific-popup.js"): 

index.html.erb:

<%= javascript_include_tag "modernizr-2.8.3.min" %> 
<%= javascript_include_tag "articles" %> 
<%= javascript_include_tag "bootstrap" %> 
<%= javascript_include_tag "bootstrap.min" %> 
<%= javascript_include_tag "classie" %> 
<%= javascript_include_tag "comments" %> 
<%= javascript_include_tag "html5shiv" %> 
<%= javascript_include_tag "jquery-1.10.2" %> 
<%= javascript_include_tag "jquery.corner" %> 
<%= javascript_include_tag "jquery" %> 
<%= javascript_include_tag "jquery.magnific-popup" %> 
<%= javascript_include_tag "modernizr-2.8.3.min" %> 
<%= javascript_include_tag "modernizr-custom" %> 
<%= javascript_include_tag "owl.carousel" %> 
<%= javascript_include_tag "PIE_IE678" %> 
<%= javascript_include_tag "script" %> 
<%= javascript_include_tag "stickUp.min" %> 
<%= javascript_include_tag "uiMorphingButton_inflow" %> 
<%= javascript_include_tag "welcome" %> 
<%= javascript_include_tag "wow.min" %> 

assets.rb:

#Javascripts 
Rails.application.config.assets.precompile += %w(application.js) 
Rails.application.config.assets.precompile += %w(articles.coffee) 
Rails.application.config.assets.precompile += %w(bootstrap.js) 
Rails.application.config.assets.precompile += %w(bootstrap.min.js) 
Rails.application.config.assets.precompile += %w(classie.js) 
Rails.application.config.assets.precompile += %w(comments.coffee) 
Rails.application.config.assets.precompile += %w(html5shiv.js) 
Rails.application.config.assets.precompile += %w(jquery-1.10.2.js) 
Rails.application.config.assets.precompile += %w(jquery-1.9.1.min.js) 
Rails.application.config.assets.precompile += %w(jquery.corner.js) 
Rails.application.config.assets.precompile += %w(jquery.js) 
Rails.application.config.assets.precompile += %w(jquery.magnific-popup.js) 
Rails.application.config.assets.precompile += %w(modernizr-2.8.3.min.js) 
Rails.application.config.assets.precompile += %w(modernizr-custom.js) 
Rails.application.config.assets.precompile += %w(owl.carousel.js) 
Rails.application.config.assets.precompile += %w(PIE_IE678.js) 
Rails.application.config.assets.precompile += %w(PIE_IE9.js) 
Rails.application.config.assets.precompile += %w(script.js) 
Rails.application.config.assets.precompile += %w(stickUp.min.js) 
Rails.application.config.assets.precompile += %w(uiMorphingButton_inflow.js) 
Rails.application.config.assets.precompile += %w(welcome.coffee) 
Rails.application.config.assets.precompile += %w(wow.min.js) 

的application.js

//= require jquery 
//= require jquery_ujs 
//= require turbolinks 
//= require bootstrap-sprockets 
//= require bootstrap 
//= require_tree . 

兩個jquery.magnific-popup.js和Modernizr的,custom.js都在我的JavaScript文件夾中。

回答

1

聽起來像這個問題可能是turbolinks。它會影響你的頁面狀態。如果你不認爲你的應用可以通過使用AJAX來加快頁面渲染的效果,那麼你也可以刪除它。

More info about Turbolinks

+0

這解決了問題,現在頁面加載正常。謝謝! – Noob005