删除所有选中的项目 rails
Delete all checked items rails
我有数组任务[],其中包含表单
中的项目
<%= check_box_tag "tasks[]", task.id %>
我在控制台中看到它们
Processing by TasksController#destroy as HTML
Parameters: {"utf8"=>"?", "authenticity_token"=>"qo6JqGn0a1Yck1j67taz7kEu/ENBrwLg0xs4HbmAehNq7yMVB3llJWYgZvRNrWKPrZqYJtZIaS89EIBFIyDZTA==", "tasks"=>["7", "8"], "commit"=>"Trash All Checked", "id"=>"delete_all"}
但是无法删除,操作无效
def delete_all
Task.where(id: params[:id]).destroy_all
redirect_to action: "index"
end
您的 ID 出现在 params[:tasks]
中,所以您必须这样写:
def delete_all
Task.where(id: params[:tasks]).destroy_all
redirect_to action: "index"
end
无论如何,我建议在视图和控制器中将 tasks
更改为 tasks_ids
。这是一个更有意义的名字。
我有数组任务[],其中包含表单
中的项目<%= check_box_tag "tasks[]", task.id %>
我在控制台中看到它们
Processing by TasksController#destroy as HTML
Parameters: {"utf8"=>"?", "authenticity_token"=>"qo6JqGn0a1Yck1j67taz7kEu/ENBrwLg0xs4HbmAehNq7yMVB3llJWYgZvRNrWKPrZqYJtZIaS89EIBFIyDZTA==", "tasks"=>["7", "8"], "commit"=>"Trash All Checked", "id"=>"delete_all"}
但是无法删除,操作无效
def delete_all
Task.where(id: params[:id]).destroy_all
redirect_to action: "index"
end
您的 ID 出现在 params[:tasks]
中,所以您必须这样写:
def delete_all
Task.where(id: params[:tasks]).destroy_all
redirect_to action: "index"
end
无论如何,我建议在视图和控制器中将 tasks
更改为 tasks_ids
。这是一个更有意义的名字。