laravel model 이벤트에서 이벤트 처리 되지 않게 하는 방법

Updated on

https://laravel.com/docs/11.x/eloquent#muting-events

use App\Models\User;
 
$user = User::withoutEvents(function () {
    User::findOrFail(1)->delete();
 
    return User::find(2);
});
$user = User::findOrFail(1);
 
$user->name = 'Victoria Faith';
 
$user->saveQuietly();

매우 간단하다, withoutEvents 안에서 사용하면, boot()에 해당하는 모델 트리거가 발생하지 않는다.

그리고 save 할때에는 saveQuietly() 를 사용해주면, 이 역시 저장될때 모델 트리거가 발생되지 않는다.