我该如何使用drf-yasg包将示例响应 -- (openapi文档)添加到我的swagger文档中?请注意,不要删除HTML标记。
使用drf_yasg.openapi.Response
--(drf-yasg文档)和@swagger_auto_schema(...)
--(drf-yasg文档)装饰器来帮助自定义规范。
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):
<b>@swagger_auto_schema(responses=response_schema_dict)</b>
def post(self, request, *args, **kwargs):
return Response({"foo": "bar"})
模式渲染结果
它一直在加载,没有显示任何内容。
如果您正在查看 Swagger 文档,则可能需要点击 "示例值" 文本。
针对@JPG的回复,这里有一个快速解决方法。前往设置并添加以下内容。
SWAGGER_SETTINGS = {
"DEFAULT_MODEL_RENDERING": "example"
}
这将首先呈现示例。