Strange scope

This commit is contained in:
Josh Warwick 2023-03-31 11:48:11 -07:00
parent 7ddaf9f5e6
commit ebbc578435
2 changed files with 4 additions and 4 deletions

View File

@ -240,7 +240,7 @@ class DjangoConnectionField(ConnectionField):
iterable = resolver(root, info, **args) iterable = resolver(root, info, **args)
if info.is_awaitable(iterable): if info.is_awaitable(iterable):
async def resolve_connection_async(): async def resolve_connection_async(iterable):
iterable = await iterable iterable = await iterable
if iterable is None: if iterable is None:
iterable = default_manager iterable = default_manager
@ -251,7 +251,7 @@ class DjangoConnectionField(ConnectionField):
iterable = await iterable iterable = await iterable
return await sync_to_async(cls.resolve_connection)(connection, args, iterable, max_limit=max_limit) return await sync_to_async(cls.resolve_connection)(connection, args, iterable, max_limit=max_limit)
return resolve_connection_async() return resolve_connection_async(iterable)
if iterable is None: if iterable is None:
iterable = default_manager iterable = default_manager

View File

@ -95,14 +95,14 @@ class DjangoFilterConnectionField(DjangoConnectionField):
qs = super().resolve_queryset(connection, iterable, info, args) qs = super().resolve_queryset(connection, iterable, info, args)
if info.is_awaitable(qs): if info.is_awaitable(qs):
async def filter_async(): async def filter_async(qs):
filterset = filterset_class( filterset = filterset_class(
data=filter_kwargs(), queryset=await qs, request=info.context data=filter_kwargs(), queryset=await qs, request=info.context
) )
if await sync_to_async(filterset.is_valid)(): if await sync_to_async(filterset.is_valid)():
return filterset.qs return filterset.qs
raise ValidationError(filterset.form.errors.as_json()) raise ValidationError(filterset.form.errors.as_json())
return filter_async() return filter_async(qs)
filterset = filterset_class( filterset = filterset_class(
data=filter_kwargs(), queryset=qs, request=info.context data=filter_kwargs(), queryset=qs, request=info.context