如何删除rails中多态关联中的一条记录?
How to delete a record in the polymorphic association in rails?
我一直在关注这个网站上的多态关联示例
https://www.richonrails.com/articles/polymorphic-associations-in-rails#comments
遗憾的是,作者没有提供在人模型或业务模型下如何删除交互的示例。
我有interactions_controller.rb
def destroy
@context = context
@interaction = @context.interactions.find(params[:id])
@interaction.destroy
end
在routes.rb
resources :business do
resources :interaction
end
在 businesses/1、show.html.erb 中,它列出了所有交互。
<% link_to 'delete', business_interaction_path([@business, interaction]), method: :delete, data: {confirm: 'Are you sure?'} %>
我试图用它来删除一个单独的交互,错误消息告诉我它可以找到 business.id 号码,但找不到 interaction.id 号码。
这既是多态关联又是嵌套资源,所以我搞糊涂了。
你能告诉我我做错了什么吗?请您在回答之前必须先了解本教程?谢谢!
<% link_to 'delete', business_interaction_path(@business, interaction), method: :delete, data: {confirm: 'Are you sure?'} %>
def destroy
@context = context
@interaction = @context.interactions.find(params[:id])
@interaction.destroy
redirect_to context_url(context)
end
删除后忘记redirect_to更正页面。这就是它一直给我错误信息的原因。
我一直在关注这个网站上的多态关联示例 https://www.richonrails.com/articles/polymorphic-associations-in-rails#comments
遗憾的是,作者没有提供在人模型或业务模型下如何删除交互的示例。
我有interactions_controller.rb
def destroy
@context = context
@interaction = @context.interactions.find(params[:id])
@interaction.destroy
end
在routes.rb
resources :business do
resources :interaction
end
在 businesses/1、show.html.erb 中,它列出了所有交互。
<% link_to 'delete', business_interaction_path([@business, interaction]), method: :delete, data: {confirm: 'Are you sure?'} %>
我试图用它来删除一个单独的交互,错误消息告诉我它可以找到 business.id 号码,但找不到 interaction.id 号码。
这既是多态关联又是嵌套资源,所以我搞糊涂了。
你能告诉我我做错了什么吗?请您在回答之前必须先了解本教程?谢谢!
<% link_to 'delete', business_interaction_path(@business, interaction), method: :delete, data: {confirm: 'Are you sure?'} %>
def destroy
@context = context
@interaction = @context.interactions.find(params[:id])
@interaction.destroy
redirect_to context_url(context)
end
删除后忘记redirect_to更正页面。这就是它一直给我错误信息的原因。