简要说明 django restframework 的交互式文档
现在为了解决前后端交互沟通的问题,不少框架都推出了相关的swage库, 用起来似乎很是友好.
正好最近在开发一个小项目,想到新项目就用新版本新技术的理念,我下载了restframework 3.7的版本,突然发现这个版本和django的旧版本有些许不兼容,于是去查看了下文档,惊喜的发现这个库已经集成了交互式API文档的功能了,不得不说,restframework是个有理想有追求的作品.也感慨我这被公司旧项目束缚了眼界的技术面.
好东西立马开始体验,官方给的入门很简单,在根路由文件里注册现成的视图即可简单入门
from django.contrib import admin
from django.conf.urls import url, include
from rest_framework.documentation import include_docs_urls API_TITLE = 'API 交互文档'
API_DESCRIPTION = '有问题单独联系, 仅作为参考文档.' urlpatterns = [
url(r'admin/', admin.site.urls),
url(r'docs/', include_docs_urls(title=API_TITLE, description=API_DESCRIPTION))
]
这样之后,在访问/docs时就会发现这么个界面:

点击绿色的 INTERACT按钮就可打开测试页面,上图中的参数部分本不该出现的,应该在进行了下面的视图配置后才会出现:
import coreapi
from django.shortcuts import render
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework.schemas import AutoSchema
from apps.cores_base import BaseAPIView # Create your views here. class ProductAPIView(BaseAPIView):
"""商品管理"""
schema = AutoSchema(manual_fields=[coreapi.Field('order', location='query'),coreapi.Field('cls', location='query'),coreapi.Field('store', location='query'),]) def get(self, request):
"""获取商品列表或单个商品"""
params = {
'pk': request.query_params.get('pk'),
'cls': request.query_params.get('cls', None),
'store': request.query_params.get('store', None),
'order': request.query_params.get('order', None)
}
return Response({'status': 0, 'data': params})
新版restframework在APIView视图中加了个类属性 schema (3.6版本就有了).
交互视图显示的查询字符串参数就是上方这么配置的,不然可能无法传递参数.
整体来说,这个交互式文档还是挺不错的.

简要说明 django restframework 的交互式文档的更多相关文章
- django自动生成接口文档
我们在实际项目中,会需要将我们的一些接口的信息返回给前端,便于前后端的交互,在实际使用中,这种自动生成接口文档的模块很多,我主要是用REST framework自动生成接口文档,这个需要用到的是cor ...
- Django 2.1.3 文档
https://blog.csdn.net/lengfengyuyu/article/details/83342553#3_23
- 微软开源 Try .NET - 创建交互式.NET文档
微软近日开源了一个新平台--Try .NET,该平台可以让开发者在线上编写并运行 .NET 代码.微软介绍,Try .NET 是一个可嵌入的代码运行器,不仅可以直接在线上对自己或者他人的代码进行编辑. ...
- 推荐个开源在线文档,助道友领悟 Django 之“道”
本文面向有手(需要一点点 Python Django 基础)的小伙伴,急需文档管理者食用最佳. 作者:HelloGitHub-吱吱(首发于 HelloGitHub 公众号) 嗷嗷待哺的小白:" ...
- 使用 Swagger 自动生成 ASP.NET Core Web API 的文档、在线帮助测试文档(ASP.NET Core Web API 自动生成文档)
对于开发人员来说,构建一个消费应用程序时去了解各种各样的 API 是一个巨大的挑战.在你的 Web API 项目中使用 Swagger 的 .NET Core 封装 Swashbuckle 可以帮助你 ...
- ASP.NET Core 中文文档 第二章 指南 (09) 使用 Swagger 生成 ASP.NET Web API 在线帮助测试文档
原文:ASP.NET Web API Help Pages using Swagger 作者:Shayne Boyer 翻译:谢炀(kiler) 翻译:许登洋(Seay) 对于开发人员来说,构建一个消 ...
- 如何生成RestFul Api文档
Web API文档工具列表Swagger ——Swagger框架可以通过代码生成漂亮的在线API,甚至可以提供运行示例.支持Scala.Java.Javascript.Ruby.PHP甚至 Actio ...
- Spring Boot中使用Swagger2构建API文档
程序员都很希望别人能写技术文档,自己却很不愿意写文档.因为接口数量繁多,并且充满业务细节,写文档需要花大量的时间去处理格式排版,代码修改后还需要同步修改文档,经常因为项目时间紧等原因导致文档滞后于代码 ...
- Django 2.0官方文档中文 渣翻 总索引(个人学习,欢迎指正)
Django 2.0官方文档中文 渣翻 总索引(个人学习,欢迎指正) 置顶 2017年12月08日 11:19:11 阅读数:20277 官方原文: https://docs.djangoprojec ...
随机推荐
- Layer Cake cf
Layer Cake time limit per test 6 seconds memory limit per test 512 megabytes input standard input ou ...
- HDU 6592 (LIS+输出字典序最大最小)
题意:给你一个序列,让你找长度最长的字典序最小和最大的单峰序列,单峰序列就是满足先增后降的序列. 思路:先正着求一遍LIS,再反着求一遍LIS,然后用单调栈来模拟. 求字典序最小的话,首先找到第一个顶 ...
- qbzt day2 下午
内容提要 高精 矩阵 筛法 先是高精除法 注意细节 高精度开方:神奇的竖式 以小数点为分界线,每两个位砍一刀 87654.321-->08|76|54|.32|1 大概就是先对第一位开方,然后相 ...
- mysql的小练习
建立如下表: 建表语句: class表创建语句 create table class(cid int not null auto_increment primary key, caption varc ...
- 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_01 Collection集合_4_Iterator接口介绍
collection集合中是没有索引的,不能使用普通的循环来便利它. 也是在util的包中 先判断集合中有没有元素 有元素就取出来,用next方法 使用接口来接受一个实现类,这就是多态
- 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第6节 Lambda表达式_1_函数式编程思想概述
函数式编程和面向对象的区别
- UI自动化之特殊处理一(iframe\句柄\鼠标键盘)
iframe\句柄\鼠标键盘是一些比较特殊的事件,需要特殊处理 目录 1.iframe 2.句柄(handle) 3.鼠标键盘 1.iframe iframe 是内嵌的网页元素,也可以说是内嵌的框架, ...
- clientdataset 做为 单机数据库的 使用 学习
http://blog.csdn.net/waveyang/article/details/34146737 unit Unit3; interface uses Winapi.Windows, Wi ...
- Shell脚本中的特殊字符(美元符、反斜杠、引号等)作用介绍
Shell中的特殊字符有 1.$ 美元符 2.\ 反斜杠 3.` 反引号 4." 双引号 5.< ,>;,*,?,[,] 下面我一一举列说明 一.$符号 1.echo $? 显示 ...
- vue组件兄弟间通信
四.兄弟组件间通信(event) 借助于一个公共的Vue的实例对象,不同的组件可以通过该对象完成事件的绑定和触发 var bus = new Vue(); bus.$emit()bus.$on() 熊 ...