首页 文章

django-rest-swagger的请求和响应模式,用于记录DRF中的API

提问于
浏览
0

我想在DRF中使用swagger生成器工具django-rest-swagger来记录我的API

现在我通过继承 rest_framework.views.APIView 来写意见

我不想使用viewsets或serializer编写视图 .

这是视图代码示例

from rest_framework.views import APIView
class SomeView(APIView):
  '''
  get:
    some description
  post:
    some other description
 '''
 def get(self, request, format=None):
    a = self.request.query_params.get('a',None)
    b = self.request.query_params.get('b',None)
    c = self.request.query_params.get('c',None)
    return Response({},status='200')

 def post(self, request, format=None):
    a = self.request.data.get('a',None)
    b = self.request.data.get('b',None)
    c = self.request.data.get('c',None)
    return Response({},status='201')

现在我可以为每个 endpoints 添加描述 .
description for each api endpoint in swagger ui

我想添加请求和响应架构如下
model schema for each endpoint in swagger

我想知道,如何在不使用序列化器和视图集的情况下实现这一目标 .

2 回答

  • 0

    我知道我没有直接回答你的问题,但我想建议你尝试一个可以在各个方向定制的很棒的包:drf-yasg . 您没有义务使用通用的rest_framework内容或序列化程序 .

    你可以直接跳到Custom schema generation

  • 1

    在当前版本的django-rest-swagger中,YAML文档字符串(如您的示例中)已被弃用,我相信 . 因此,我认为您需要手动定义架构 . 文档包含如何在视图级别执行此操作的示例:

    http://www.django-rest-framework.org/api-guide/schemas/#manualschema

相关问题