Ruby on rails 如何使控制器操作可调整为多个散列参数
如果我在视图中检查多条记录,然后点击删除按钮, 将调用放弃操作 现在我一次只能删除(取消刷新)1条记录。 为什么即使我检查了多个记录,也不能一次删除所有记录 看法 路线Ruby on rails 如何使控制器操作可调整为多个散列参数,ruby-on-rails,ruby-on-rails-3,view,hash,controller,Ruby On Rails,Ruby On Rails 3,View,Hash,Controller,如果我在视图中检查多条记录,然后点击删除按钮, 将调用放弃操作 现在我一次只能删除(取消刷新)1条记录。 为什么即使我检查了多个记录,也不能一次删除所有记录 看法 路线 match 'messages/discard(/:id)' => 'messages#discard' , :as => :discard_messages 当有多个相同名称的输入时,最后一个“wins”-params[:id]将是最后提交的输入的值,因此只删除一条消息(通过检查params散列的值很容易看到)
match 'messages/discard(/:id)' => 'messages#discard' , :as => :discard_messages
当有多个相同名称的输入时,最后一个“wins”-
params[:id]
将是最后提交的输入的值,因此只删除一条消息(通过检查params散列的值很容易看到)
如果输入名称以[]
结尾(即,在您的例子中,将名称设置为id[]
),rails将把所有值收集到一个数组中
def discard
conversation = Conversation.find_all_by_id(params[:id])
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
match 'messages/discard(/:id)' => 'messages#discard' , :as => :discard_messages