1 创建Django工程
1.1 安装pip,django等相关插件
1.2 创建app
1.3 创建视图
from django.shortcuts import render, HttpResponse
from django.views.generic import View
# Create your views here.
class Login(View):
@classmethod
def get(cls, request):
return HttpResponse('ok')
1.4 配置路由
from django.contrib import admin
from django.urls import path
from nucleus.views import Login
urlpatterns = [
path('admin/', admin.site.urls),
path('Login/', Login.as_view()),
]
2 安装apidoc
使用淘宝镜像安装
2.1 命令
npm config set registry https://registry.npm.taobao.org
1.2 验证命令
npm config get registry
如果返回https://registry.npm.taobao.org,说明镜像配置成功。
2 安装apidoc
npm install -g apidoc -g --registry=https://registry.npm.taobao.org
3 为视图编写注释代码
from django.shortcuts import render, HttpResponse
from django.views.generic import View
# Create your views here.
class Login(View):
@classmethod
def get(cls, request):
"""
@api {GET} /Login/登录操作
@apiVersion 0.0.1
@apiName Login
@apiGroup User
@apiDescription 这里可以描述一下这个函数的具体操作
这一行也可以描述的
@apiParam {String} name 姓名
@apiParam {String} password 密码
@apiSuccess {Object} status 状态码
@apiSuccess {Object} msg 简略描述
@apiSuccessExample Response-Success:
HTTP 1.1/ 200K
{
'status': 0,
'msg': 'success'
}
@apiErrorExample Response-Fail:
HTTP 1.1/ 404K
{
'status': 1,
'msg': 'Fail'
}
"""
return HttpResponse('ok')
4 先在项目根目录下放一个apidoc.json文件,示例如下:
{
"name": "测试",
"version": "0.0.1",
"description": "API文档测试",
"title": "API文档测试",
"url" : "http://xxxxxxx",
"sampleUrl" : "http://xxxxxxxx",
"template":{
"forceLanguage":"zh_cn"
}
}
5 运行生产文档
每次更新都必须重新编译才能够访问到最新的注释。
apidoc -i nucleus/ -o static/apidoc # nucleus是APP目录
6 配置settings.py
在项目根目录下创建static/apidoc
STATIC_ROOT = os.path.join(BASE_DIR, 'static') APIDOC_ROOT = os.path.join(STATIC_ROOT, 'apidoc')
7 配置url
from django.contrib import admin
from django.urls import path, re_path
from nucleus.views import Login
from django.views.static import serve
from django.conf import settings
urlpatterns = [
path('admin/', admin.site.urls),
path('Login/', Login.as_view()),
re_path(r'^apidoc/(?P<path>.*)$', serve, {'document_root': settings.APIDOC_ROOT}),
]
8 浏览器访问
http://127.0.0.1:8000/apidoc/index.htm