我現在的模型有一些關係。我怎樣才能刪除它們,以防模型被刪除? 該查詢不會刪除相關模型,只會刪除「主要模型」。laravel5.2刪除所有關係的模型
我用這個代碼來調用:
$checks = Check::where('created_at','<=', Carbon::now()
->subHours(3))
->with('checks')
->with('results')
->delete();
這是我目前的檢查模式
protected static function boot(){
parent::boot();
static::deleting(function($check) {
$check->checks()->delete();
$check->results()->delete();
});
}
結果與檢查包含每個檢查多個項目。這意味着要清楚:
一個支票可能有CheckResult
,並可能有CheckProcedure
(我當然會刪除所有這些)。
您在查詢生成器上調用'delete',而不是模型。如果你想要一個模型事件被觸發,你必須在模型上調用它。如果你只是在db上執行刪除語句,也不知道急切的加載是什麼。 – lagbox