我有两个型号: 模型1 field id,field_a,field_b
模型2 id2,field_a,field_b
on $ model1-> delete()我想删除$ model2,其中field_a和field_b与$ model1相同(两者都是)
实施例
$('#confirm-delete').on('show.bs.modal', function(e) {
var deleteid = $(e.relatedTarget).data('delete');
alert(deleteid);
$('#delBtn').attr('onClick', "location.href='/supprimer/" + deleteid + "'");
});
我不知道这是否有用 Automatically deleting related rows in Laravel (Eloquent ORM)
答案 0 :(得分:1)
在模型1上注册删除事件,删除值匹配的模型2。
在model 1
中添加以下内容......
public static function boot()
{
parent::boot();
static::deleted(function($model1) {
Model2::where('field_1', $model1->field_1)->where('field_2', $model1->field_2)->delete()
});
}
现在,每当删除模型1时,也会删除具有匹配属性的模型2。
答案 1 :(得分:0)
只需找到并删除model2中列值相似的行。
Model2::where('field_a',$model1->field_a)->where('field_b',$model1->field_b)->delete();
$model1->delete();
此处, Model2 是第二个模型的类。