Ruby on rails 无法多次删除,routes.rb中的收集语法是否正确?

Ruby on rails 无法多次删除,routes.rb中的收集语法是否正确?,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我正在尝试多重删除,在控制器和视图中设置了所有正确的代码,但它不起作用。我的路由文件中有这个代码,对吗?因为我认为问题只在这里 routes.rb文件 resources :profiles do collection { post :import } collection do delete 'destroy_multiple' end end 在profile_controller.rb文件中 def destroy_multiple

我正在尝试多重删除,在控制器和视图中设置了所有正确的代码,但它不起作用。我的路由文件中有这个代码,对吗?因为我认为问题只在这里

routes.rb文件

  resources :profiles do
    collection { post :import }
    collection do 
      delete 'destroy_multiple'
    end
  end
在profile_controller.rb文件中

  def destroy_multiple
    Profile.destroy(params[:profiles])
    respond_to do |format|
      format.html { redirect_to profiles_path }
      format.json { head :no_content }
    end
  end
在index.html.erb文件中,在表I中

<td><%= check_box_tag "profiles[]", profile.id %></td>
<%= submit_tag "Delete selected" %>

下表我有

<td><%= check_box_tag "profiles[]", profile.id %></td>
<%= submit_tag "Delete selected" %>

但是当我点击这个删除所选按钮时,什么也没有发生。

编辑-我从这里获取了这个多重删除代码

编辑2-我忘了添加

<%= form_tag destroy_multiple_profiles_path, method: :delete do %>
  ...
<%= end %>

...

我现在已经添加了,但是按钮没有删除记录,并且没有发生任何事情

您在问题中显示您正在使用
submit\u标签
,这意味着您有一个表单。表单应将方法设置为
delete
,并将操作设置为
destroy\u multiple
路径,以便路由到正确的操作。在代码中,这类似于

= form_tag '/profiles/destroy_multiple', method: :delete do

你说的“不工作”是什么意思?具体点。的
表单是什么样子的?@ChrisPeters-Chris,我编辑了问题的最后一部分,当我点击这个删除选中按钮时,什么都没有发生。希望你不会觉得我的问题很烦人。。。“什么都没发生”是什么意思?浏览器在那里,不处理任何请求?屏幕被重新加载,数据没有变化?@ChrisPeters-很抱歉刚才看到了评论,没有发生任何事情意味着当我点击按钮时,记录不会被删除,页面也不会被加载。所以,这就像点击没有功能的按钮一样,令人沮丧。您确定
复选框标签
s和
提交标签
都在
表单标签
中吗?你在Chrome控制台中有错误吗?Chrome控制台内的网络选项卡中是否有任何特别的情况发生?谢谢,我忘记添加form_标记,现在我已经添加了(请参见相关编辑),但该按钮没有删除所选记录。当我点击它时什么也没发生。你能粘贴你点击按钮时收到的请求吗?如何找到?在Chrome控制台上,当我点击开发日志中的按钮时,我没有看到任何东西。它应该位于
Rails根目录/logs/development.log