From e913512db0ce896d63214ea6c79948692e9bf24b Mon Sep 17 00:00:00 2001 From: Toby Zerner Date: Thu, 11 Jul 2024 17:56:50 +0100 Subject: [PATCH] Apply Eloquent resource scope when applying relationship filter --- src/Laravel/Filter/WhereHas.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Laravel/Filter/WhereHas.php b/src/Laravel/Filter/WhereHas.php index 180e1f8..1fa743d 100644 --- a/src/Laravel/Filter/WhereHas.php +++ b/src/Laravel/Filter/WhereHas.php @@ -58,6 +58,10 @@ public function apply(object $query, array|string $value, Context $context): voi $query->{static::QUERY_BUILDER_METHOD}($field->property ?: $field->name, function ( $query, ) use ($value, $relatedCollection, $context) { + if ($relatedCollection instanceof EloquentResource) { + $relatedCollection->scope($query, $context); + } + if (array_is_list($value)) { $query->whereKey(array_merge(...array_map(fn($v) => explode(',', $v), $value))); } else {