File tree Expand file tree Collapse file tree 2 files changed +19
-5
lines changed Expand file tree Collapse file tree 2 files changed +19
-5
lines changed Original file line number Diff line number Diff line change 11default_language_version :
2- python : python3.11
2+ python : python3.10
33repos :
44- repo : https://github.com/pre-commit/pre-commit-hooks
55 rev : v4.4.0
Original file line number Diff line number Diff line change 11from collections import OrderedDict
22from functools import singledispatch , wraps
33from asyncio import get_running_loop
4+ from asgiref .sync import sync_to_async
45
56from django .db import models
67from django .utils .encoding import force_str
@@ -265,17 +266,17 @@ def dynamic_type():
265266 _type = registry .get_type_for_model (model )
266267 if not _type :
267268 return
268-
269+
269270 class CustomField (Field ):
270271 def wrap_resolve (self , parent_resolver ):
271272 resolver = super ().wrap_resolve (parent_resolver )
272273
273- try :
274+ try :
274275 get_running_loop ()
275276 except RuntimeError :
276277 pass
277278 else :
278- resolver = sync_to_async (resolver )
279+ resolver = sync_to_async (resolver )
279280
280281 return resolver
281282
@@ -334,7 +335,20 @@ def dynamic_type():
334335 if not _type :
335336 return
336337
337- return Field (
338+ class CustomField (Field ):
339+ def wrap_resolve (self , parent_resolver ):
340+ resolver = super ().wrap_resolve (parent_resolver )
341+
342+ try :
343+ get_running_loop ()
344+ except RuntimeError :
345+ pass
346+ else :
347+ resolver = sync_to_async (resolver )
348+
349+ return resolver
350+
351+ return CustomField (
338352 _type ,
339353 description = get_django_field_description (field ),
340354 required = not field .null ,
You can’t perform that action at this time.
0 commit comments