我是Rails 3.1的新手,最近开始了一个项目。我的Gemfile包含jquery-rails,如下所示:
gem 'jquery-rails'
事实上,我已经在我当前的RVM gemset中验证了它的存在(版本1.0.19)(使用gem list
)。
我开始使用支持Ajax的表单,通过阅读Googling中的各种文章和帖子,似乎我应该在rails.js
文件夹中有一个名为javascripts
的文件(我假设这是assets/javascripts/
,我正在使用默认资产管道。
我的问题实际上涉及两个部分:
即使在rails.js
之后,我也无法在我的项目中找到bundle install
文件,因此我从https://github.com/rails/jquery-ujs下载并将其放入我的assets/javascripts/
}文件夹。这是正确的做法吗?
在包含rails.js
后,我的Ajax表单现在提交了三次。经过进一步调查,似乎我的所有javascript(或jquery ???)被调用了三次。当我点击" destroy"对象的链接(当您rails g scaffold something
时生成的类型),确认弹出窗口也会出现三次。删除rails.js
文件也会消除此问题。
我们将非常感谢任何帮助或建议......我已经在Google和SO上搜索了几个小时,并且无法获得任何好处。谢谢!
答案 0 :(得分:14)
jquery-rails从gem内部提供jquery和jquery_ujs。您无需将这些文件复制到assets / javascripts。
确保在javascripts / application.js中有这两行:
//= require jquery
//= require jquery_ujs
在您的布局中设置javascript_include_tag 'application'
。