数据方法:删除不工作

时间:2014-02-07 03:04:30

标签: ruby-on-rails destroy ujs

我有以下代码:

  <% @groups.each do |group| %>
         <button class="btn btn-danger" data-method="destroy" data-confirm="Sure?" type="button">
            <i class="fa fa-trash-o"></i>
         </button> 
   <% end %>

在我的控制器中:

 def destroy
   @group = Group.find(params[:id])
   respond_to do |format|  
   if @result = @group.destroy  
    format.html
    format.js        
  else  
    format.html 
    format.js
  end  
 end  
end

然而,它甚至没有触发确认。我已经看过关于UJS的API,以及关于SO的其他帖子,但是,我无法弄清楚在这里做错了什么。

非常感谢正确方向的任何一点。

2 个答案:

答案 0 :(得分:0)

所以,这就是我修复它的方法:

首先,我确保我的所有资源都在routes文件中定义。

resources :groups

其次,这就是我找出link_to方法的方法:

<%= link_to group, method: :delete, class: 'btn btn-danger', confirm: 'Are you sure?', :remote => true do %>
  <i class="fa fa-trash-o"></i> 
<% end %>

答案 1 :(得分:0)

按钮不会触发表单提交,因此您必须将其更改为标记。