由于几个重要原因,我没有在我的Rails应用程序中使用JS turbo链接。我遇到一个删除按钮问题:
<% if current_user?(comment.user) %>
<%= link_to "delete", micropost_response_comment_path(@micropost, @response, comment), method: :delete, data: { confirm: "You sure?" }, :class => "btn btn-default btn-xs delete" %>
<% end %>
这是错误 - 它发布到comments_controller的索引操作。
{"controller"=>"comments", "action"=>"index", "micropost_id"=>"impedit-ipsam-maxime-voluptatem-quis-vitae-perferendis-voluptatem-quia-minus-officia-dolorem-aut-placeat-tempora-earum-optio-quam-saepe-velit-871c1ab8-e282-441b-b610-4d2937c9aeef", "response_id"=>"38"}
我的应用程序上的所有其他删除按钮和销毁功能都有效。我在这里看不到任何问题,我不确定还有什么要补充 - 我确信需要更多信息,但不确定是什么......
如果您有任何建议并需要更多信息,请告知我们。
非常感谢
答案 0 :(得分:0)
您可以按如下方式指定控制器和操作:
<% if current_user?(comment.user) %>
<%= link_to "delete", { controller: "comments", action: "delete", micropost: @micropost, response: @response, comment: comment}, data: { confirm: "You sure?" }, class: "btn btn-default btn-xs delete" %>
<% end %>
否则,您可能遇到路由问题。
答案 1 :(得分:0)
错误未显示您的第三个参数:“评论”。 那是缺失的。 你能找出原因吗? 此外,错误本身也不会显示。你能选择更多文字并带到这里吗?
是否在控制器的“删除”操作之前或之后引发了该错误? 记录是否已被删除,控制器是否正确引导您到索引? 什么是完整的错误消息? 控制器中的“删除”操作是什么? 问候。
答案 2 :(得分:0)
好的,所以我发现了错误,它确实是一串人们根本没想过的错误。不确定是否有人可以从中吸取教训,但这里就是....
评论属于属于Micropost的Response。
我有
belongs_to :response, dependent: :destroy
在我的评论模型中,而不是相反,因此当我销毁评论时,其父母也被销毁。
在我在评论控制器中的destroy方法中,我有一个重定向
format.html { redirect_to micropost_response_comments_path(@micropost, @response) }
在破坏之后,这是不可能的,因为@response总是被它摧毁......
错误的灾难。谢谢你们的时间......
消息是:
如果您在删除对象时发生了严重的行为,请确认您对该模型,其父母及其子女的关系是正确的。