Laravel 模型实现连带删除
实际项目中,我们可能需要在删除一个表中数据的时候,和它相关联的表也要有相应的操作(删除或修改),Laravel 提供了非常便捷的操作方法。
假设情况:
加入我们在写一个博客系统,那么就会有文章表、用户表,这两个表是相关联的,我们在删除用户的时候,同时删除用户对应的的文章数据,那么在 Laravel 中:
上代码:
// User模型classUserextendsEloquent{//与用户关联的文章表publicfunctionposts(){return $this->hasMany('Post');}protectedstaticfunctionboot(){
parent::boot();//在删除用户的同时执行操作static::deleting(function($user){// 删除与用户关联的文章
$user->posts()->delete();});}}
这样我们在删除用户的同时,与之有关系的文章数据也会被删除。
THE END