繁体   English   中英

drf-yasg 如何使用 api 显示示例响应?

[英]drf-yasg How to show sample response with with api?

如何使用drf-yasg包将示例响应(openapi doc)添加到我的 swagger 文档中?

使用drf_yasg.openapi.Response - (DRF-yasg DOC)的帮助下@swagger_auto_schema(...) - (DRF-yasg DOC)装饰的

from drf_yasg.utils import swagger_auto_schema
from drf_yasg import openapi
from rest_framework.response import Response
from rest_framework.views import APIView

response_schema_dict = {
    "200": openapi.Response(
        description="custom 200 description",
        examples={
            "application/json": {
                "200_key1": "200_value_1",
                "200_key2": "200_value_2",
            }
        }
    ),
    "205": openapi.Response(
        description="custom 205 description",
        examples={
            "application/json": {
                "205_key1": "205_value_1",
                "205_key2": "205_value_2",
            }
        }
    ),
}


class MyTestAPIView(APIView):

    @swagger_auto_schema(responses=response_schema_dict)
    def post(self, request, *args, **kwargs):
        return Response({"foo": "bar"})

架构呈现结果

架构呈现结果

更新

它继续加载并且不显示任何内容

如果您正在查看Swagger文档,则可能需要单击“示例值”文本

加载微调器

针对@JPG 的回复,有一个快速解决方案。 转到设置并添加它。

SWAGGER_SETTINGS = {
    "DEFAULT_MODEL_RENDERING": "example"
}

这将首先呈现示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM