在DRF的api根目录中记录嵌套序列化程序

2024-05-15 08:00:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试记录api的post端点。此视图的序列化程序是ParentSerializer,它是ChildSerializer的组合。你知道吗

class ChildSerializer(serializers.Serializer):
  name = serializers.CharField()
  surname = serializer.CharField()

class ParentSerializer(serializers.Serializer):
  children = ChildSerializer(many=True)

接下来在我的视图集中,我实现了get_serializer方法,使模型出现在api根文档中。你知道吗

class ParentViewSet(viewsets.ViewSet):
    def get_serializer(self):
        return ParentSerializer()

    def create(self, request):
        # ... do something ...
        return Response({}, status=status.HTTP_201_CREATED)

我希望文档中的模型是嵌套序列化程序,但它只显示父属性。你知道吗

所以文档模型看起来像:

{
    "children": []
}

我能告诉api用户"children"键的模型是什么吗?提供预期请求数据的示例和模型的最佳方式是什么?你知道吗


Tags: 文档模型程序视图apiget序列化class