From 59f9cb8443c62e707daecf52d1400e0b72f598dc Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sun, 12 Apr 2026 19:08:41 +0200 Subject: ⚡ search: small improvment on && searches MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ishtar_common/views_item.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index 405920dd9..11d7a5345 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -41,6 +41,7 @@ from django.db.models import ( F, Q, Count, + Subquery, Sum, ImageField, ExpressionWrapper, @@ -2887,11 +2888,11 @@ def get_item( if split_type == "OR": items |= sub_items else: - # in Django m2m queries use the same JOIN... + # in Django m2m queries use the same JOIN # items &= sub_items do not work - items &= model.objects.filter(Q( - pk__in=list(sub_items.values_list("pk", flat=True)) - )) + items &= model.objects.filter( + id__in=Subquery(sub_items.values("id")) + ) if return_query: return items -- cgit v1.2.3