删除和其他路由之间的区别

时间:2013-08-27 21:38:02

标签: ruby-on-rails

下面我有操作编辑和销毁的链接助手。第一个链接(以及所有其他链接)工作正常,但第二个链接创建了一个不起作用的奇怪网址。

<%= link_to "Edit", edit_event_path(organizer_vanity_url: event.organizer.vanity_url, id: event.id) %>  
<%= link_to 'Remove', event_path(organizer_vanity_url: event.organizer.vanity_url, id: event.id), method: :delete, data: { confirm: 'Are you sure?' } %>

这是来自routes.rb:

scope "organizer" do
  scope ":organizer_vanity_url" do
    scope "manage" do
      resources :events
    end
  end
end

删除链接帮助程序和其他程序之间有什么区别(因为这是唯一不起作用的程序)?

1 个答案:

答案 0 :(得分:0)

link_to - 是类似GET请求的帮助程序(默认情况下)

DELETE方法是类似POST的方法

所以,你传递post方法来获得帮助并接收“怪异网址”

要解决此问题,您有两种选择:

  • 使用button_to代替link_to帮助程序(默认情况下,第一个用于提交表单提交)

  • use js正确处理您的链接。