博客开发之关联删除
要删除一个栏目,那么该栏目下的所有的文章,评论都会被删除;在TP中使用的关联预载入再通过together()方法实现,也可以在数据库中实现关联删除。在Laravel中则也是使用类似的方法实现,在模型中定义关联查询,然后关联预载入,最后循环删除。
1.在模型中定义关联方法
//关联文章表实现关联删除
public function article()
{
return $this->hasMany('App\Models\Article','member_id','id');
}
2.在控制器中关联预载入,然后循环删除
$cateInfo = CateModel::with('article')->find(\request('id'));
foreach ($cateInfo->article as $vol){
$vol->delete();
}
$result = $cateInfo->delete();
实现效果图如下: