【发布时间】:2019-08-29 06:13:08
【问题描述】:
我在 laravel 中使用 parent_id 实现了嵌套 cmets,并且还有另一个表 votes 存储相关数据。
我在 cmets 模型中定义了很多关系。现在,当我删除评论时,它也应该删除所有回复和投票。
删除我使用的投票
$review->votes()->delete();
效果很好。但我坚持删除嵌套回复的投票。
如果我使用 foreach 循环,如何在所有动态级别内循环。
public function deletereview($id=null){
$review = Review::find($id);
foreach($review->replies as $reply){
$reply->votes()->delete();
//how to do this for all levels?
$reply = $reply->votes(); // this doesn't work
}
return back();
}
请就正确的做法提出建议。
注意:我已经阅读了迁移中的级联选项,但这并不能解释嵌套 cmets 的任何内容(回复回复及其相关数据)。
谢谢 -维杰
【问题讨论】:
-
Afaik 当您删除
comment并对其回复和投票具有级联关系时,它也应该删除这些。您是否对您的 cmets 有回复和投票的级联关系?请向我们展示相关的迁移。