删除链接已停止工作data-method =’delete’但转到显示页面

我只是注意到我的应用程序中的所有各种删除链接现在只是显示页面。 这个应用程序从rails 2.3.8开始,现在是rails 3.2.17

rails代码示例:

控制器,

def destroy @group = Group.find(params[:id]) @group.destroy respond_to do |format| format.html { redirect_to(groups_url) } format.xml { head :ok } end end 

和,

 def destroy @link = Link.find(params[:id]) @link.destroy respond_to do |format| format.html { redirect_to(links_url) } end end 

哪个产生:

HTML,

  x  

和,

  x  

我注意到我有,

 = javascript_include_tag "application" 

在我的应用程序布局模板中,我尝试更新它,

 = javascript_include_tag :defaults 

但它没有帮助解决这个问题,仍然会显示页面而不是删除,更糟糕的是, 这样做会阻止我的所有其他javascript工作! 例如自动将用户留在搜索字段,日期选择器日历等。

我的application.js文件有:

 //= require jquery-1.7.2.min //= require jquery-ui-1.8.22.custom.min //= require default_on_first_input_field //= require row_shading //= require long_or_short_details //= require sortable_hook //= require date-picker //= require_self 

答案是我需要添加这一行:

 //= require jquery_ujs 

到我的js清单。 这解决了它。 我的清单现在看起来像:

 // Place your application-specific JavaScript functions and classes here // This file is automatically included by javascript_include_tag :defaults // //= require jquery-1.7.2.min //= require jquery-ui-1.8.22.custom.min //= require jquery_ujs //= require default_on_first_input_field //= require row_shading //= require long_or_short_details //= require sortable_hook //= require date-picker //= require_self