首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过drf-yasg为ReDoc添加x-server和x-taggroup

如何通过drf-yasg为ReDoc添加x-server和x-taggroup
EN

Stack Overflow用户
提问于 2020-02-21 16:33:10
回答 1查看 413关注 0票数 3

我正在使用drf-yasg编写文档,我正在使用redoc,它工作得很好。但我想添加x-serverx-taggroups。我想为视图设置自定义标签,并将它们添加到自己的标签组中,但我在文档中找不到任何关于这方面的内容,我应该如何着手呢?

EN

回答 1

Stack Overflow用户

发布于 2020-11-22 20:48:58

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

代码语言:javascript
复制
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类时提供自定义生成器类:

代码语言:javascript
复制
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],
)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60334793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档