在 Laravel 中,我已经正确地设置了一对多关系,并且可以使用 saveMany 函数保存关系。
问题是:
如何让Laravel自动删除未使用的注释,并仅将最新的注释存储到数据库中?
例如,第一次,
然而,当我稍后更新关系时,
$post->comment()->saveMany($array);
问题是:
如何让Laravel自动删除未使用的注释,并仅将最新的注释存储到数据库中?
例如,第一次,
ID 1 Post has ID 1, ID2, ID 3 comment.
然而,当我稍后更新关系时,
ID 1 Post only has ID 2, ID 3 comment
如何让Laravel自动删除ID为1的评论
,并且只保留表格中的ID为2和3
?谢谢。
saveMany()
只会添加新的项目,而不会删除它们。如果要取消父级,请使用 @zub0r 的示例,或者像我上面说的那样使用$comment->dissociate()
。如果您想完全删除它们而不是取消关系并保存它们,请在 foreach 循环中调用$comment->delete();
。 - Robert