我正在使用Mailboxer
gem。
检查行,并且视图传递多个ID,但此操作仅在接收参数时传输第一个ID#的记录。
我需要做什么来删除与参数中传递的ID相对应的所有记录?
参数
{"utf8"=>"✓",
"authenticity_token"=>"35UoVt+dvwrGAgg+KZjn8jCZjlkdPj1ktCg5ASyCI4w=",
"checked_items"=>{"15"=>"15",
"14"=>"14"},
"commit"=>"Trash All Checked"}
动作
def discard
conversation = Conversation.find_by_id(params[:checked_items].keys)
if conversation
current_user.trash(conversation)
flash[:notice] = "Message sent to trash."
else
conversations = Conversation.find(params[:conversations])
conversations.each { |c| current_user.trash(c) }
flash[:notice] = "Messages sent to trash."
end
redirect_to :back
end
答案 0 :(得分:0)
使用find_all_by_id代替find_by_id,您将获得所有会话,然后逐个删除。