Rails4:资产管道(javascripts)路由错误

时间:2016-04-22 16:54:00

标签: javascript jquery ruby-on-rails twitter-bootstrap

我在Rails 4.2.2应用程序中使用了一个(杂乱的)Bootstrap主题。当我输入localhost:3000时,我的index.html.erb视图中的所有内容都会完美加载。当我尝试在另一个页面上使用“后退”按钮(root_path)查看相同的index.html.erb视图时,我会按照自己的意愿转到localhost:3000,但只加载了导航栏,我在服务器中收到以下错误日志。当我刷新同一页面(localhost:3000)时,一切正常。

我运行了捆绑exec rake资产:清理资产:预编译并重新启动服务器,没有任何更改。

我做错了什么?我不明白为什么有些JS文件正在工作,我收到这两个特定JS文件的错误 - 或者为什么一切都在刷新时正确加载。

感谢。

PS编辑:我正在部署到Heroku但是在dev和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都在我的javascripts文件夹中。

1 个答案:

答案 0 :(得分:1)

听起来这个问题可能是涡轮问题。它会影响您的页面状态。如果您不认为您的应用程序可以从使用AJAX加速页面呈现中受益,那么您也可以将其删除。

More info about Turbolinks