如何触发铁路的数据方法="删除"通过javascript

时间:2016-03-06 02:54:48

标签: javascript ruby-on-rails tampermonkey

我想制作一个扩展程序,将代码注入特定网站,允许用户一次删除多个帖子,而不必一次手动删除一个。

似乎触发删除的元素如下所示:

<a class="button delete link" rel="nofollow" data-method="delete" href="/relative-path">Yes</a>

现在我对rails一无所知,但是一旦我确定了所有这些元素,我可以通过javascript触发它们吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我创建了一个简单的表单,其中包含一个复选框,您可以选择要删除的行,例如

= simple_form_for :user, :url => delete_selected_path, :method => :delete do |f|
  %table
    %tr
      %td Select
      %td Name
    - users.each do |user|
      %tr
        %td= check_box_tag 'user_ids[]', user.id 
        %td= user.name
    %tr
      %td
      %td= f.button :submit, 'Delete Selected'

我还在我的控制器中创建了一个名为

的新命名为delete_selected
def delete_selected
  User.where(id: params[:user_ids]).delete_all
  redirect_to root_path
end

此方法的作用是找到所有user_ids,然后调用delete_all

我确实创建了一个自定义路线,就像这样

match "/pages_delete_selected" => "pages#delete_selected", :as => :delete_selected, via: :all

您可以将:all更改为:delete或其他任何内容以使其更具体

您可以在https://github.com/mzaragoza/sample_delete_multiple_records_at_once

找到此示例的所有源代码

即将发布实时预览https://sample-delete-multiple-records.herokuapp.com/