From cdb910fdda71efae237f0fb66870288284cb1080 Mon Sep 17 00:00:00 2001 From: Toby Zerner Date: Wed, 5 May 2021 14:18:58 +0930 Subject: [PATCH] Eloquent: require all IDs when filtering a hasMany relationship --- src/Adapter/EloquentAdapter.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Adapter/EloquentAdapter.php b/src/Adapter/EloquentAdapter.php index 9336114..4da8352 100644 --- a/src/Adapter/EloquentAdapter.php +++ b/src/Adapter/EloquentAdapter.php @@ -184,9 +184,11 @@ class EloquentAdapter implements AdapterInterface $relatedKey = $relation->getRelated()->getQualifiedKeyName(); if (count($ids)) { - $query->whereHas($property, function ($query) use ($relatedKey, $ids) { - $query->whereIn($relatedKey, $ids); - }); + foreach ($ids as $id) { + $query->whereHas($property, function ($query) use ($relatedKey, $id) { + $query->where($relatedKey, $id); + }); + } } else { $query->whereDoesntHave($property); }