DRF框架方便的集成了集中生成API文档的方式,可以按需要进行挑选
一,简介
- 生成API文档平台
- 自动生成测试代码
-
二,安装
coreapi(必须)
- Pygments(可选)
MarkDown(可选)
pip install -i https://pypi.douban.com/simple coreapi
pip install -i https://pypi.douban.com/simple Pygments
pip install -i https://pypi.douban.com/simple MarkDown
三,使用coreapi
1.最新版的DRF(>3.10)中,需要在全局配置文件settings.py中添加如下配置
REST_FRAMEWORK = {
# 指定用于支持coreapi的Schema
'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.coreapi.AutoSchema',
}
2,在全局路由配置文件中添加以下代码
from rest_framework.documentation import include_docs_urls
from django.urls import path, include
urlpatterns = [
path('docs/', include_docs_urls(title='测试平台接口文档')),
]
3,添加注释
单一方法的视图,直接给视图添加注释即可
class ProjectsListView(ListAPIView):
"""
返回所有项目信息
"""
多个方法的视图
class ProjectsListCreateView(ListCreateAPIView):
"""
get:
返回所有项目信息
post:
新建项目
"""
视图集
class ProjectsViewset(viewsets.ModelViewSet):
"""
create:
创建项目
retrieve:
获取项目详情数据
update:
完整更新项目
partial_update:
部分更新项目
destroy:
删除项目
list:
获取项目列表数据
names:
获取所有项目名称
interfaces:
获取指定项目的所有接口数据
"""
四,使用drf-yasg
1,安装
pip install drf-yasg
2,注册drf-yasg
将’drf_yasg’添加到全局配置的INSTALLED_APPS中
INSTALLED_APPS = [
...
'drf_yasg',
...
]
3,在全局路由文件urls.py文件中添加配置
```python
from rest_framework import permissions
from drf_yasg.views import get_schema_view from drf_yasg import openapi from django.urls import path, re_path
schema_view = get_schema_view( openapi.Info( title=”API接口文档平台”, # 必传 default_version=’v1’, # 必传 description=”这是一个美轮美奂的接口文档”, terms_of_service=”http://api.xiaogongjin.site“, contact=openapi.Contact(email=”xiaogongjin@qq.com”), license=openapi.License(name=”BSD License”), ), public=True,
# permission_classes=(permissions.AllowAny,), # 权限类
)
urlpatterns = [
re_path(r’^swagger(?P