不确定这是否正是您正在寻找的,但我认为它可能会有所帮助。
要设置我使用的标签@swagger_auto_schema decorator
,可以通过几种不同的方式应用,主要取决于Views
项目中使用的类型。完整的详细信息可以在此处的文档中找到。
使用Views
派生自APIView
时,您可以执行以下操作:
class ClientView(APIView):
@swagger_auto_schema(tags=['my custom tag'])
def get(self, request, client_id=None):
pass
根据文档,限制是tags
仅将 strs 列表作为值。所以从这里开始,我相信不再支持标签上的额外属性,如 Swagger 文档中所述,here。
无论如何,如果您只需要定义摘要或描述来获得如下图所示的内容,则可以使用装饰器或类级别的文档字符串来定义它们。这是一个例子:
class ClientView(APIView):
'''
get:
Client List serialized as JSON.
This is a description from a class level docstring.
'''
def get(self, request, client_id=None):
pass
@swagger_auto_schema(
operation_description="POST description override using
decorator",
operation_summary="this is the summary from decorator",
# request_body is used to specify parameters
request_body=openapi.Schema(
type=openapi.TYPE_OBJECT,
required=['name'],
properties={
'name': openapi.Schema(type=openapi.TYPE_STRING),
},
),
tags=['my custom tag']
)
def post(self, request):
pass
祝你好运!