Skip to content

Commit 44ac0f3

Browse files
Bug fix in chained_resolver and default_resolver
1 parent 863ab88 commit 44ac0f3

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

graphene_mongo/fields.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ def default_resolver(self, _root, info, required_fields=list(), **args):
284284
if not info.context:
285285
info.context = Context()
286286
info.context.queryset = self.get_queryset(self.model, info, required_fields, **args)
287-
elif _root is None:
287+
elif _root is None or args:
288288
count = self.get_queryset(self.model, info, required_fields, **args).count()
289289
if count != 0:
290290
skip, limit, reverse = find_skip_and_limit(first=first, after=after, last=last, before=before,
@@ -346,6 +346,9 @@ def chained_resolver(self, resolver, is_partial, root, info, **args):
346346
if arg_name not in self.model._fields_ordered + ('first', 'last', 'before', 'after') + tuple(
347347
self.filter_args.keys()):
348348
args_copy.pop(arg_name)
349+
if '.' in arg_name:
350+
operation = list(arg.keys())[0]
351+
args_copy[arg_name.replace('.', '__') + operation.replace('$', '__')] = arg[operation]
349352
return self.default_resolver(root, info, required_fields, **args_copy)
350353
else:
351354
return resolved

0 commit comments

Comments
 (0)