无法找到带有' id' =的项目;摧毁行动

时间:2016-10-29 17:38:33

标签: ruby-on-rails controller destroy

我需要自定义我的控制器,所以我这样做了:

路线:

post    'add_item', to: 'walls#create'
delete  'remove_item', to: 'walls#destroy'

破坏动作WallsController:

def destroy
  @item = Item.find params[:id]
  @item.destroy
  redirect_to :back
end

视图:

<% @items.each do |item| %>
  <%= item.name %> <%= link_to "X", remove_item_path(item), method: :delete %>
<% end %>

创建动作效果很好,但仍然会出现销毁操作错误:Couldn't find Item with 'id'=

非常感谢您的帮助

2 个答案:

答案 0 :(得分:1)

remove_item_path期望项ID为参数。

link_to "X", remove_item_path(item.id), method: :delete

答案 1 :(得分:0)

这有效:

T