当检索具有关系的模型时,Eloquent可以很容易地这样做:
SortedList
这反过来为我们提供了一个确定关系中记录数量的选项
$model = Model::with('related_model')->where('col_name', 'col_value')->get();
当关系计数为零时,我需要批量删除记录:
$count = count($model->related_model);
普通模型的常规删除如下所示:
Model::with('related_model')->where('col_name', 'col_value')->get();
有没有办法以某种方式实现关系条件,以便只删除计算ZERO关系的模型记录。
的调整
Model::where('col_name', 'col_value')->delete();
或者我是否必须首先检索模型数据然后单独运行删除语句?
谢谢!
答案 0 :(得分:0)
在做了更多研究之后,我发现Eloquent在Model类上提供了has()
方法,解决方案看起来像这样
Model::has('related_model', '=', 0)->where('col_name', 'col_value')->delete();