我收到错误:
访问我的应用程序中包含include标记的页面时, ActionView::Template::Error(jquery-1.9.1.min.js isn't precompiled)
:<%= javascript_include_tag "jquery-1.9.1.min"%>
请注意,我的观点正在处理所有其他页面,而这些页面偶然没有前面提到的include标记。
我已将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
我的应用中,但我不认为这是问题因为我在该文件夹中有其他javascripts正在处理其他页面在生产中可以访问。
我的application.js有以下内容:
//= require jquery-1.9.1.min
//= require jquery_ujs
//= require jquery.numeric
//= require_tree .
//= require bootstrap
在开发中工作正常。如果相关,我的gemfile有gem 'jquery-rails', '2.0.2'
。
最后,在production.rb中,我尝试添加config.assets.precompile += %w( jquery-1.9.1.min.js, highstock.js )
并使用bundle exec rake assets:precompile
。
由于rake assets:precompile
public/assets
application.js
我的jquery-1.9.1.min
已经拥有已编译jquery-1.9.1.min
代码的{{1}},因此它还有一个单独的文件{{1}}看起来它被编译了两次。我不认为这是问题......
我无法弄清楚这一点。有什么想法吗?
答案 0 :(得分:0)
好的,
我想到了这个野兽的工作。我认为config.assets.precompile += %w(...,...)
中的','正在影响预编译。我拿出','。我还设置了config.assets.initialize_on_precompile = true
,并使用rake assets:clean
现在heroku进行预编译并且可以正常工作。