批量删除记录

workhors/index.html.erb

 

<% @workhours.each do |workhour| %>
  <tr class="<%= cycle("odd","even") %>">
    <td><%= link_to format_id(workhour.id), workhour %></td>
    <td><%= check_box_tag "workhour_ids[]", workhour.id if can? :destroy, workhour %></td>
         ..................
 <% end %>

<%= form_tag destroy_multiple_workhours_path, :method => :delete, :id => 'multiple' do %>
  <div class='multiple'>
    <%= check_box_tag :check_all %>
    <%= label_tag :check_all, '选择所有' %> 
    <%= submit_tag "删除选中项" %> 
  </div>
<% end %>

 

worhours.js.coffee

 

jQuery ->
  $("#check_all").click(->
    $("input:checkbox").prop("checked", $(this).prop("checked"))
  )

  $('#multiple').submit(->
    $("input:checkbox", "table").each( ->
      $(this).clone().css("display", 'none').appendTo("#multiple")
    )
  )
 

routes.rb

 

  resources :workhours do
    collection do
      delete 'destroy_multiple'
    end
  end
 

workhours_controller.rb

 

  def destroy_multiple
    if params[:workhour_ids].blank?
      redirect_to :back, :alert => '请选择待删除项'
    else
      workhours = Workhour.find params[:workhour_ids]
      workhours.each do |w|
        w.destroy
      end
      redirect_to :back, :notice => I18n.t('flash.actions.destroy.notice')
    end
  rescue => e
    redirect_to :back, :alert => e.to_s
  end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值