2011-06-24 48 views
1

我有一個電子郵件收件箱表。 在每一行中都有一個刪除按鈕: <%= link_to'刪除',email,:method =>:delete,:confirm =>'您確定要刪除此電子郵件嗎?' %>列表中選定項目的Rails組操作 - 最佳方式

注意:此處的電子郵件是傳遞給頁面的電子郵件對象。

現在。我想在每一行都有一個複選框,並在底部有一個常用的刪除按鈕。我把每一行中的複選框設置爲: <%= check_box_tag('email',email)%>

我不知道如何去做一個普通的刪除按鈕在底部。

感謝

回答

1

的形式(比如multi_delete),流程傳遞到操作的檢查電子郵件ID只是這個包起來。

您將需要修改這個,但一般:

#multi_delete action to be defined in config/routes.rb 

#in your view 
= form_tag(:action => :multi_delete) do 
    - @emails.each do |email| 
    = check_box_tag('emails[]', email.id) 
    = submit_tag('Delete', :confirm => "Go for it?") 

#in your controller 
def multi_delete 
    Email.destroy_all("id IN ?", params[:emails]) 
    redirect_to :action => "index" 
end 
+0

感謝。對於那些需要更多細節的人來說,RailsCast#52概述了一個非常類似的方法:http://railscasts.com/episodes/52-update-through-checkboxes。 –

相關問題