gpt4 book ai didi

django - 如何通过 drf-yasg 为 ReDoc 添加 x-server & x-taggroups

转载 作者:行者123 更新时间:2023-12-04 04:17:31 25 4
gpt4 key购买 nike

我正在使用 drf-yasg 作为文档,我正在使用 redoc 并且它运行良好。但我想添加 x-serverx-taggroups。我想为 View 设置自定义标签,并将它们添加到自己的标签组中,但我在文档中找不到任何关于此的内容,我应该怎么做?

最佳答案

您可以通过子类化 OpenAPISchemaGenerator 在您的架构中包含任意额外数据(例如 x-serverx-tagGroups 供应商扩展)。

class MyOpenAPISchemaGenerator(OpenAPISchemaGenerator):

def get_schema(self, request=None, public=False):
# Get the Swagger object generated by the superclass
swagger = super().get_schema(request, public)

# Add any extra fields you want
swagger['x-tagGroups']=[{
'name': 'My Group 1',
'tags': ['myTag1', 'myTag2']
},{
'name': 'My Group 2',
'tags': ['myTag1', 'myTag2', 'myTag3']
}]
return swagger

然后,确保在获取 SchemaView 类时提供自定义生成器类:

schema_view = get_schema_view(
openapi.Info(
title="Your API",
default_version='v1',
description="Your description",
),
public=True,
generator_class=MyOpenAPISchemaGenerator, # <--- Don't forget this
permission_classes=[permissions.AllowAny],
)

关于django - 如何通过 drf-yasg 为 ReDoc 添加 x-server & x-taggroups,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60334793/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com