Django Rest Swagger生成api文档
2021-03-12 08:29
标签:方法 style framework auth 首字母 base frame router space 1.安装 2.配置 rest_api/settings.py 3.配置apitest/urls.py Django Rest Swagger生成api文档 标签:方法 style framework auth 首字母 base frame router space 原文地址:https://www.cnblogs.com/kcxg/p/12600371.htmlpip install django-rest-swagger
INSTALLED_APPS = [
‘django.contrib.admin‘,
‘django.contrib.auth‘,
‘django.contrib.contenttypes‘,
‘django.contrib.sessions‘,
‘django.contrib.messages‘,
‘django.contrib.staticfiles‘,
# 加入以下
‘api‘,
‘rest_framework‘,
‘rest_framework_swagger‘,
]
# swagger 配置项
SWAGGER_SETTINGS = {
# 基础样式
‘SECURITY_DEFINITIONS‘: {
"basic":{
‘type‘: ‘basic‘
}
},
# 如果需要登录才能够查看接口文档, 登录的链接使用restframework自带的.
‘LOGIN_URL‘: ‘rest_framework:login‘,
‘LOGOUT_URL‘: ‘rest_framework:logout‘,
# ‘DOC_EXPANSION‘: None,
# ‘SHOW_REQUEST_HEADERS‘:True,
# ‘USE_SESSION_AUTH‘: True,
# ‘DOC_EXPANSION‘: ‘list‘,
# 接口文档中方法列表以首字母升序排列
‘APIS_SORTER‘: ‘alpha‘,
# 如果支持json提交, 则接口文档中包含json输入框
‘JSON_EDITOR‘: True,
# 方法列表字母排序
‘OPERATIONS_SORTER‘: ‘alpha‘,
‘VALIDATOR_URL‘: None,
}
from django.conf.urls import url,include
from django.contrib import admin
from rest_framework import routers
from api import views
# 路由
router = routers.DefaultRouter()
router.register(r‘users‘,views.UserViewSet,base_name=‘user‘)
router.register(r‘groups‘,views.GroupViewSet,base_name=‘group‘)
# 重要的是如下三行
from rest_framework.schemas import get_schema_view
from rest_framework_swagger.renderers import SwaggerUIRenderer, OpenAPIRenderer
schema_view = get_schema_view(title=‘Users API‘, renderer_classes=[OpenAPIRenderer, SwaggerUIRenderer])
urlpatterns = [
# swagger接口文档路由
url(r‘^docs/‘, schema_view, name="docs"),
url(r‘^admin/‘, admin.site.urls),
url(r‘^‘,include(router.urls)),
# drf登录
url(r‘^api-auth/‘,include(‘rest_framework.urls‘,namespace=‘rest_framework‘))
]