我有三个表student
,user
和contact,
学生与Contact有关系,Contact与User表有关系(user_id
)。
当我尝试从学生中删除时,应使用级联删除将其从用户和联系人中删除。但是,它仅从Student表中删除,并将数据保留在User和Contact表中。
StudentController
<?php
public function destroy(Student $student)
{
$student->delete();
return redirect('/admin/student')->with('success','has been Deleted');
}
我在学生模型中使用
public function contact()
{
return $this->belongsTo('App\Contact');
}
public static function boot() {
parent::boot();
static::deleting(function($student) {
$student->contact()->delete();
});
这是可行的,但是我在联系模型中使用了
public function user()
{
return $this->belongsTo('App\User');
}
public static function boot() {
parent::boot();
static::deleting(function($contact) {
$contact->user()->delete();
});
在删除学生中删除联系人,但不删除用户
我不知道如何解决它。