Skip to content

Commit 3065f76

Browse files
committed
更新drf-yasg的试用
1 parent c9a2e47 commit 3065f76

2 files changed

Lines changed: 38 additions & 0 deletions

File tree

base_django_api/settings.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,8 @@
243243
# 使用这个时需要使用django-rest的admin 也就是需要配置 url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),
244244
# 'LOGIN_URL': 'rest_framework:login',
245245
# 'LOGOUT_URL': 'rest_framework:logout',
246+
# 自定义swagger的路由tag
247+
'DEFAULT_GENERATOR_CLASS': 'config.swagger.BaseOpenAPISchemaGenerator',
246248
'USE_SESSION_AUTH': False,
247249
# 'SHOW_EXTENSIONS': False,
248250
'DOC_EXPANSION': 'none',

config/swagger.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
from drf_yasg.generators import OpenAPISchemaGenerator
2+
3+
4+
class BaseOpenAPISchemaGenerator(OpenAPISchemaGenerator):
5+
'''重写 OpenAPISchemaGenerator 手动为每个路由添加 tag'''
6+
7+
def get_schema(self, request=None, public=False):
8+
'''重写父类方法'''
9+
swagger = super().get_schema(request, public)
10+
swagger.tags = [
11+
{
12+
"name": "adminlogin",
13+
"description": "核心功能",
14+
},
15+
{
16+
'name': 'auth',
17+
'description': '权限管理'
18+
},
19+
{
20+
'name': 'celery',
21+
'description': '异步任务测试'
22+
},
23+
{
24+
'name': 'confdict',
25+
'description': '系统字典'
26+
},
27+
{
28+
'name': 'getcode',
29+
'description': '发送短信验证码'
30+
},
31+
{
32+
'name': 'member',
33+
'description': '会员管理'
34+
}
35+
]
36+
return swagger

0 commit comments

Comments
 (0)