From 34f59784469eb18a4b6a9e6938e8e62517ff110a Mon Sep 17 00:00:00 2001 From: Daniel Bachler Date: Wed, 28 Feb 2018 17:52:27 +0100 Subject: [PATCH] Move distinct check code to merge_querysets again --- graphene_django/fields.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/graphene_django/fields.py b/graphene_django/fields.py index 854c691..5576454 100644 --- a/graphene_django/fields.py +++ b/graphene_django/fields.py @@ -67,6 +67,10 @@ class DjangoConnectionField(ConnectionField): @classmethod def merge_querysets(cls, default_queryset, queryset): + if default_queryset.query.distinct and not queryset.query.distinct: + queryset = queryset.distinct() + elif queryset.query.distinct and not default_queryset.query.distinct: + default_queryset = default_queryset.distinct() return queryset & default_queryset @classmethod @@ -77,10 +81,6 @@ class DjangoConnectionField(ConnectionField): if isinstance(iterable, QuerySet): if iterable is not default_manager: default_queryset = maybe_queryset(default_manager) - if default_queryset.query.distinct and not iterable.query.distinct: - iterable = iterable.distinct() - elif iterable.query.distinct and not default_queryset.query.distinct: - default_queryset = default_queryset.distinct() iterable = cls.merge_querysets(default_queryset, iterable) _len = iterable.count() else: