Simplify optimize_querset signature with qs.model

This commit is contained in:
Jacob Foster 2017-07-19 22:50:29 -05:00
parent 582958c642
commit 1230da5413
5 changed files with 7 additions and 7 deletions

View File

@ -27,7 +27,7 @@ class DjangoListField(Field):
qs = maybe_queryset(resolver(root, args, context, info))
if isinstance(qs, QuerySet):
qs = optimize_queryset(qs.model, qs, info.field_asts[0])
qs = optimize_queryset(qs, info.field_asts[0])
return qs
@ -76,7 +76,7 @@ class DjangoConnectionField(ConnectionField):
if iterable is not default_manager:
default_queryset = maybe_queryset(default_manager)
iterable = cls.merge_querysets(default_queryset, iterable)
iterable = optimize_queryset(default_manager.model, iterable, info.field_asts[0])
iterable = optimize_queryset(iterable, info.field_asts[0])
_len = iterable.count()
else:
_len = len(iterable)

View File

@ -76,7 +76,7 @@ class DjangoFilterConnectionField(DjangoConnectionField):
data=filter_kwargs,
queryset=default_manager.get_queryset()
).qs
qs = optimize_queryset(default_manager.model, qs, info.field_asts[0])
qs = optimize_queryset(qs, info.field_asts[0])
return super(DjangoFilterConnectionField, cls).connection_resolver(
resolver,

View File

@ -82,8 +82,8 @@ def get_related_fetches_for_model(model, graphql_ast):
return relateds
def optimize_queryset(model, queryset, graphql_ast):
relateds = get_related_fetches_for_model(model, graphql_ast)
def optimize_queryset(queryset, graphql_ast):
relateds = get_related_fetches_for_model(queryset.model, graphql_ast)
for related in relateds:
if related.fetch_type == SELECT:

View File

@ -44,7 +44,7 @@ class RootQuery(graphene.ObjectType):
def resolve_article(self, args, context, info):
qs = ArticleModel.objects
qs = optimize_queryset(ArticleModel, qs, info.field_asts[0])
qs = optimize_queryset(qs, info.field_asts[0])
return qs.get(**args)
def resolve_reporters(self, args, context, info):

View File

@ -121,7 +121,7 @@ class DjangoObjectType(six.with_metaclass(DjangoObjectTypeMeta, ObjectType)):
@classmethod
def get_node(cls, id, context, info):
query = cls._meta.model._meta.default_manager
query = optimize_queryset(cls._meta.model, query, info.field_asts[0])
query = optimize_queryset(query, info.field_asts[0])
try:
return query.get(pk=id)
except cls._meta.model.DoesNotExist: