带有序列化程序Django 3.1的异步视图

带有序列化程序Django 3.1的异步视图,django,asynchronous,django-rest-framework,python-asyncio,django-serializer,Django,Asynchronous,Django Rest Framework,Python Asyncio,Django Serializer,我正在尝试创建一个异步视图,用Django3.1解决端点问题 我有我的AsyncView,在这个视图中我有下面的代码行: try: db_result= await sync_to_async(list)(Plan.objects.filter()) serializer = MySerializer(db_results, many=True) return serializer.data except Exception: # Handle Exceptio

我正在尝试创建一个异步视图,用Django3.1解决端点问题

我有我的AsyncView,在这个视图中我有下面的代码行:

try:
    db_result= await sync_to_async(list)(Plan.objects.filter())
    serializer =  MySerializer(db_results, many=True)
    return serializer.data
except Exception:
    # Handle Exception Code
在序列化程序中,我有一个自定义字段。通过使用其obj属性对数据库进行其他查询来检索其数据。这就是我遇到一些问题的地方,因为这是一个异步上下文

序列化程序代码:

MySerializer(serializers.ModelSerializer):

    custom_field = serializers.SerializerMethodField(required=False)

    def get_custom_field(self, obj):
        try:
            # This is failing, is not retrieving data from DB since it's async context
            related_stuff = obj.related_stuff.filter(filter_condition=filter_condition)
            # More code after this
            .
            .
            .
            .
            return custom_field_object
        except Exception:
            return None

我尝试在视图代码中的序列化程序之前放置一个wait,并添加async属性以获取\u custom\u字段方法(在db查询中使用sync\u to\u async操作符)。什么都没有

有人知道如何解决这个具体问题吗