Django Rest Swagger生成api文档

Posted 侃豺小哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django Rest Swagger生成api文档相关的知识,希望对你有一定的参考价值。

1.安装

pip install django-rest-swagger

2.配置 rest_api/settings.py

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,
}

3.配置apitest/urls.py

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(rusers,views.UserViewSet,base_name=user)
router.register(rgroups,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))

]

 

以上是关于Django Rest Swagger生成api文档的主要内容,如果未能解决你的问题,请参考以下文章

Django Rest framework Swagger生成api文档

django-rest-swagger对API接口注释

如何在 Django REST Swagger 中生成响应消息列表?

django-rest-framework 和 swagger api 文档

用YAML生成Swagger格式的API Documentation

利用Swagger Maven Plugin生成Rest API文档