From eb938da35374dd00e2ae3c9f443d9d45f965ec6f Mon Sep 17 00:00:00 2001 From: Jason Kraus Date: Thu, 4 Oct 2018 14:19:08 -0700 Subject: [PATCH] first attempt at adding get_queryset --- graphene_django/fields.py | 3 ++- graphene_django/types.py | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/graphene_django/fields.py b/graphene_django/fields.py index 1ecce45..237cd07 100644 --- a/graphene_django/fields.py +++ b/graphene_django/fields.py @@ -135,7 +135,8 @@ class DjangoConnectionField(ConnectionField): args["last"] = min(last, max_limit) iterable = resolver(root, info, **args) - on_resolve = partial(cls.resolve_connection, connection, default_manager, args) + queryset = connection._meta.node.get_queryset(info) + on_resolve = partial(cls.resolve_connection, connection, queryset, args) if Promise.is_thenable(iterable): return Promise.resolve(iterable).then(on_resolve) diff --git a/graphene_django/types.py b/graphene_django/types.py index aa8b5a3..a111114 100644 --- a/graphene_django/types.py +++ b/graphene_django/types.py @@ -126,10 +126,14 @@ class DjangoObjectType(ObjectType): model = root._meta.model._meta.concrete_model return model == cls._meta.model + + @classmethod + def get_queryset(cls, info): + return cls._meta.model.objects @classmethod def get_node(cls, info, id): try: - return cls._meta.model.objects.get(pk=id) + return cls.get_queryset(info).get(pk=id) except cls._meta.model.DoesNotExist: return None