对于删除请求,没有路由匹配[GET]

时间:2016-05-28 13:56:27

标签: ruby ruby-on-rails-4 routing

我在No route matches [GET]请求时收到路由错误delete。这是我的删除路线
delete '/remove/:product_id', to: 'carts#remove_product'
我这样用它 <a href="/remove/<%=subq.product.id%>" method="delete"></a>。有关此错误的任何想法吗?

1 个答案:

答案 0 :(得分:3)

正如Justin Wood建议的那样,你可以使用Rails&#39; link_to helper,如下所示:

<%= link_to 'Destroy', your_method_path(subq.product), :method => :delete %>

如果您想坚持目前的做法,可以尝试(请注意data-method而不是method,请参阅https://stackoverflow.com/a/35283202/4480140):

<a href="/remove/<%=subq.product.id%>" data-method="delete"></a>

并检查你的application.js文件中是否有

//= require jquery
//= require jquery_ujs

最后,application.js文件包含在view/layout/application.html.erb文件中。 Cf https://stackoverflow.com/a/17748391/4480140