From 8f7d90fe62de372129c44ccfe3fe751169015256 Mon Sep 17 00:00:00 2001 From: stefan Date: Thu, 18 Jul 2024 13:17:16 +0200 Subject: [PATCH 1/3] deleting a nested BelongsTo relation now triggers model events on the deleted model --- src/Execution/Arguments/NestedBelongsTo.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Execution/Arguments/NestedBelongsTo.php b/src/Execution/Arguments/NestedBelongsTo.php index 7a446f084..696342f6e 100644 --- a/src/Execution/Arguments/NestedBelongsTo.php +++ b/src/Execution/Arguments/NestedBelongsTo.php @@ -71,7 +71,7 @@ public static function disconnectOrDelete(BelongsTo $relation, ArgumentSet $args && $args->arguments['delete']->value ) { $relation->dissociate(); - $relation->delete(); + $relation->first()?->delete(); } } } From 1cd1188d03df127b403e9ac1f003b37ec90cb8d6 Mon Sep 17 00:00:00 2001 From: stefan Date: Fri, 19 Jul 2024 15:10:03 +0200 Subject: [PATCH 2/3] deleting a nested BelongsTo relation now triggers model events on the deleted model --- src/Schema/Directives/DeleteDirective.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Schema/Directives/DeleteDirective.php b/src/Schema/Directives/DeleteDirective.php index c3cc90fbd..e6ec94b7a 100644 --- a/src/Schema/Directives/DeleteDirective.php +++ b/src/Schema/Directives/DeleteDirective.php @@ -90,7 +90,7 @@ public function __invoke($model, $idOrIds): void $relation->getParent()->save(); } - $relation->delete(); + $relation->first()->delete(); } } else { // @phpstan-ignore-next-line Relation&Builder mixin not recognized From 7e5fa6c26b4c12138a353c044fe318d96b0e8193 Mon Sep 17 00:00:00 2001 From: stefan Date: Fri, 19 Jul 2024 15:11:48 +0200 Subject: [PATCH 3/3] deleting a nested BelongsTo relation now triggers model events on the deleted model --- src/Schema/Directives/DeleteDirective.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Schema/Directives/DeleteDirective.php b/src/Schema/Directives/DeleteDirective.php index e6ec94b7a..58131c69f 100644 --- a/src/Schema/Directives/DeleteDirective.php +++ b/src/Schema/Directives/DeleteDirective.php @@ -90,7 +90,7 @@ public function __invoke($model, $idOrIds): void $relation->getParent()->save(); } - $relation->first()->delete(); + $relation->first()?->delete(); } } else { // @phpstan-ignore-next-line Relation&Builder mixin not recognized