mirror of
https://github.com/graphql-python/graphene-django.git
synced 2025-07-13 01:32:24 +03:00
Keep original queryset on DjangoFilterConnectionField
The PR #796 broke DjangoFilterConnectionField making it always get the raw queryset from the model to apply the filters in it. This makes sure that the DjangoObjectType's .get_queryset is called, keeping any filtering it might have made.
This commit is contained in:
parent
e82a2d75c6
commit
3bfab99faf
|
@ -55,10 +55,11 @@ class DjangoFilterConnectionField(DjangoConnectionField):
|
||||||
def resolve_queryset(
|
def resolve_queryset(
|
||||||
cls, connection, iterable, info, args, filtering_args, filterset_class
|
cls, connection, iterable, info, args, filtering_args, filterset_class
|
||||||
):
|
):
|
||||||
|
qs = super(DjangoFilterConnectionField, cls).resolve_queryset(
|
||||||
|
connection, iterable, info, args
|
||||||
|
)
|
||||||
filter_kwargs = {k: v for k, v in args.items() if k in filtering_args}
|
filter_kwargs = {k: v for k, v in args.items() if k in filtering_args}
|
||||||
return filterset_class(
|
return filterset_class(data=filter_kwargs, queryset=qs, request=info.context).qs
|
||||||
data=filter_kwargs, queryset=iterable, request=info.context
|
|
||||||
).qs
|
|
||||||
|
|
||||||
def get_queryset_resolver(self):
|
def get_queryset_resolver(self):
|
||||||
return partial(
|
return partial(
|
||||||
|
|
Loading…
Reference in New Issue
Block a user