1

我得到错误:

ActionView::Template::Error(jquery-1.9.1.min.js isn't precompiled)在我的应用程序中访问具有包含标签的页面时:<%= javascript_include_tag "jquery-1.9.1.min"%>

请注意,我的观点适用于所有其他没有前面提到的包含标签的页面。

我已经设置config/application.rb好了config.assets.initialize_on_precompile = false,我也在bundle exec rake assets:precompile本地完成了。然后我推送到 heroku,但我仍然在 Heroku 日志中看到错误。

请注意,它jquery-1.9.1.min.js是在本地下载并放入vendoer\assets\javascripts我的应用程序的,但我认为这不是问题,因为我在该文件夹中有其他 javascript,它们在生产中可访问的其他页面上工作。

我的 application.js 有以下内容:

//= require jquery-1.9.1.min
//= require jquery_ujs
//= require jquery.numeric
//= require_tree .
//= require bootstrap

这在开发中运行良好。gem 'jquery-rails', '2.0.2'如果相关的话,我的 gemfile 有。

最后,在 production.rb 我尝试添加config.assets.precompile += %w( jquery-1.9.1.min.js, highstock.js )和使用bundle exec rake assets:precompile.

由于rake assets:precompilepublic/assets有一个application.js已经编译好的代码,jquery-1.9.1.min而且它还有一个单独的文件jquery-1.9.1.min,所以看起来它被编译了两次。虽然我不认为这是问题...

我想不通。有任何想法吗?

4

1 回答 1

0

行,

我想办法解决这个野兽。我认为','在config.assets.precompile += %w(...,...)影响预编译。我拿出了','。我还设置config.assets.initialize_on_precompile = true并取消了任何预编译rake assets:clean

现在 heroku 进行了预编译,它可以工作了。

于 2013-03-30T01:38:54.187 回答