rails Nested Resource子级和父级具有相同的id

时间:2014-03-04 16:41:47

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

我有一个认可,它在我的管理界面中有了很多EndorsementImage,当我生成一个删除嵌套图像的链接时,链接使用了孩子的id(这显然不起作用)本身和父母。

您可以从我的佣金路线示例中看到它们共享相同的内容:id?

对此有任何帮助将非常感激。

Rake Routes示例:

DELETE /endorsements/:id/endorsements_images/:id(.:format)  admin/endorsements_images#destroy

生成一个像http://foobar:3000/endorsements/8/endorsements_images/8这样的链接 - 前8个是错误的,应该是背书本身的ID,而不是背书图像。

Routes.rb

resources :endorsements do 
  member  do
    resources :endorsements_images
  end
end

我的链接

<%= link_to 'Destroy',  admin_endorsement_images_path(@endorsement,img), method: :delete, data: { confirm: 'Are you sure?' } %>

1 个答案:

答案 0 :(得分:0)

member块不应包含endorsements_images的资源

resources :endorsements do 
  member  do
    delete :endorsements_images
  end
end

您上面所做的不是RESTfull,因为id已经是唯一标识符,我建议您为endorsements_images创建单独的资源,因为您不需要endorsement_id来删除endorsements_images

resources :endorsements_images