我正在创建一个使用gem“
jquery-rails”的rails mountable引擎插件.我在.gemspec文件中添加了此代码
s.add_dependency "jquery-rails","~> 3.0.1"
并运行bundle install,bundle update. (BTW是否需要添加?因为rails mountable引擎已经添加了“rails 4.0.1”,这反过来又要求“jquery-rails 3.0.4”作为它的依赖从一开始?).
在app / assets / javascript / mountable_engine_name / application.js中
//= require jquery //= require jquery-ujs //= require_tree .
但是当我在test / dummy /上运行服务器并访问使用标签<%= javascript_include_tag“mountable_engine_name / application”%>的任何模板时它显示错误“无法找到文件’jquery’”.
我尝试创建一个全新的可安装引擎插件,但它发生的情况相同.
我做错什么了吗?
PS.对不起我的英语不好.
UPDATE
实际上它发生在app / assets / javascript /和test / dummy / app / assets / javascript /中需要jquery和jquery-ujs的所有清单文件中.
解决方法
我知道原来的问题是在几个月前被问到的,但我遇到了同样的问题
通过Rails引擎教程完成问题,所以我发布以防万一
这有助于其他人……
通过Rails引擎教程完成问题,所以我发布以防万一
这有助于其他人……
我发现我需要更新四个文件:
#file: <your engine name>.gemspec s.add_dependency "jquery-rails","~> 3.1.1"
2.)更新您的引擎application.js文件:
#file: <your engine name>/app/assets/javascripts/blorgh/application.js ... //= require jquery //= require jquery_ujs //= require_tree .
3.)更新您的父app app.js文件:
#file: <your engine name>/test/dummy/app/assets/javascripts/application.js ... //= require jquery //= require jquery_ujs //= require_tree .
4.)根据这个SO thread,你需要在你的engine.rb文件中添加一个require:
#file: lib/<your engine name>/engine.rb module <your engine name> class Engine < ::Rails::Engine require 'jquery-rails' isolate_namespace Blorgh end end
和平.