Flask框架学习笔记(API接口管理平台 V2.0)
博主今天把API接口管理平台发布到github了,这次是更新一些功能

如支持本地数据库sqlite3、优化了数据结构
技术方面跟之前V1.0相同,只增加生产本地数据;但是为了支持层级的参数,修改了数据结构,下面是新的model.py
#!/usr/bin/env python
# -*- coding: utf-8 -*- from app import db class User(db.Model):
user_id = db.Column(db.Integer, primary_key=True, autoincrement=True)
user_name = db.Column(db.String(64))
password = db.Column(db.String(64))
status = db.Column(db.Integer)
level = db.Column(db.Integer) class Model(db.Model):
model_id = db.Column(db.Integer, primary_key=True, autoincrement=True)
model_name = db.Column(db.String(256))
status = db.Column(db.Integer)
# 项目分类ID、名称、状态 class Interface(db.Model):
interface_id = db.Column(db.Integer, primary_key=True, autoincrement=True)
model_id = db.Column(db.Integer, db.ForeignKey("model.model_id"))
interface_name = db.Column(db.String(64))
interface_url = db.Column(db.String(1024))
interface_method = db.Column(db.String(64))
request_exam = db.Column(db.String(4096))
response_exam = db.Column(db.String(4096))
status = db.Column(db.Integer)
# 接口信息 class Parameter(db.Model):
parameter_id = db.Column(db.Integer, primary_key=True, autoincrement=True)
interface_id = db.Column(db.Integer, db.ForeignKey("interface.interface_id"))
parameter_type = db.Column(db.String(64))
parameter_group_id = db.Column(db.Integer)
parameter_name = db.Column(db.String(64))
necessary = db.Column(db.String(64))
type = db.Column(db.String(64))
default = db.Column(db.String(64))
remark = db.Column(db.String(64))
level = db.Column(db.String(64))
# 参数信息
然后是根据定义好的结构重新定义表单字段 forms.py
#!/usr/bin/env python
# -*- coding: utf-8 -*- from flask_wtf import Form
from wtforms import StringField, TextField, PasswordField, FormField, SubmitField, FieldList, IntegerField
from wtforms.validators import Required, DataRequired class LoginForm(Form):
username = StringField("登陆名", validators=[Required()])
password = PasswordField("密码", validators=[Required()]) class ModelForm(Form):
model_name = StringField("中文名称", validators=[Required()]) class InterfaceForm(Form):
interface_name = StringField("接口名称", validators=[Required()])
interface_url = StringField("接口地址", validators=[Required()])
interface_method = StringField("接口方法", validators=[Required()])
request_exam = TextField("请求示例", validators=[Required()])
response_exam = TextField("返回示例", validators=[Required()]) class ParameterRequestForm(Form):
parameter_group_id = StringField("从属", validators=[Required()])
parameter_name = StringField("参数名称", validators=[Required()])
necessary = StringField("是否必须", validators=[Required()])
type = StringField("类型", validators=[Required()])
default = StringField("默认值", validators=[Required()])
remark = StringField("备注", validators=[Required()])
level = StringField("层级", validators=[Required()]) class ParameterResponseForm(Form):
parameter_group_id = StringField("从属", validators=[Required()])
parameter_name = StringField("参数名称", validators=[Required()])
necessary = StringField("是否必须", validators=[Required()])
type = StringField("类型", validators=[Required()])
default = StringField("示例", validators=[Required()])
remark = StringField("描述", validators=[Required()])
level = StringField("层级", validators=[Required()]) class SubmitForm(Form):
submit = SubmitField("保存")
关系总结就是 项目分类下有接口、接口中有参数、参数又分为 请求参数;返回参数
还增加了后台管理:

github地址:https://github.com/cllovewxq/pythonapi
这边博主没有把用户管理完成、还有使用项目过程中有用户密码的话就用:admin/123456
Flask框架学习笔记(API接口管理平台 V2.0)的更多相关文章
- Flask框架学习笔记(API接口管理平台 V1.0)
今天博主终于完成了API接口管理平台,最后差的就是数据库的维护, 博主这里介绍下平台的设计原理,首先基于python,利用flask的web框架+bootstrap前端框架完成,先阶段完成了前台展示页 ...
- 分享一个开源免费、目前最好的API接口管理平台----eoLinker
一.概况 eoLinker 是目前业内领先.国内最大的在线 API 接口管理平台,提供自动生成 API 文档.API 自动化测试.Mock 测试.团队协作等功能,旨在解决由于前后端分离导致的开发效率低 ...
- Web开发Flask框架学习笔记
Python 是一种跨平台的[计算机程序设计语言],是一种面向对象的动态类型语言,Python是纯粹的自由软件,源代码和解释器CPython遵循 GPL(GNU General Public Lice ...
- Activiti工作流框架学习笔记(二)之springboot2.0整合工作流Activiti6.0
以前在工作当中做过不少与工作流Activiti有关的工作,当时都是spring集成activiti5.22的项目,现在回过头去看,其实版本已经稍微老了,因此,基于先前的工作经验,决定用较新版本的技术来 ...
- 这个接口管理平台 eoLinker 开源版部署指南你一定不想错过
本文主要内容是讲解如何在本地部署eoLinker开源版. 环境要求 1.PHP 5.5+ / PHP7+(推荐) 2.Mysql 5.5+ / Mariadb 5.5+ 3.Nginx(推荐) / A ...
- 这份接口管理平台 eoLinker 开源版的部署指南教程你一定不想错过
本文主要内容是讲解如何在本地部署eoLinker开源版. 环境要求 1.PHP 5.5+ / PHP7+(推荐) 2.Mysql 5.5+ / Mariadb 5.5+ 3.Nginx(推荐) / A ...
- JavaSE中线程与并行API框架学习笔记1——线程是什么?
前言:虽然工作了三年,但是几乎没有使用到多线程之类的内容.这其实是工作与学习的矛盾.我们在公司上班,很多时候都只是在处理业务代码,很少接触底层技术. 可是你不可能一辈子都写业务代码,而且跳槽之后新单位 ...
- JavaSE中线程与并行API框架学习笔记——线程为什么会不安全?
前言:休整一个多月之后,终于开始投简历了.这段时间休息了一阵子,又病了几天,真正用来复习准备的时间其实并不多.说实话,心里不是非常有底气. 这可能是学生时代遗留的思维惯性--总想着做好万全准备才去做事 ...
- [接口管理平台] eoLinker AMS 专业版 V3.5 :加入数据结构管理、通用函数管理、API 快速测试等近 30 项更新
eoLinker AMS是集API文档管理.API自动化测试.开发协作三位一体的综合API开发管理平台,是中国最大的在线API管理平台.目前eoLinker AMS已经为来自全球的超过两万家企业托管超 ...
随机推荐
- [转]使用 Minidumps 和 Visual Studio .NET 进行崩溃后调试
本文关键字:Minidumps, Windows, SEH, VisualC, .NET 摘要 本文讲述了 minidumps 是怎样工作的.当你的程序崩溃的时候应该如何生成它们.以及如何在 Visu ...
- LintCode "Expression Evaluation"
This is sth. for me to learn.. https://github.com/kamyu104/LintCode/blob/master/C++/expression-evalu ...
- 解决方案:将已存在的项目 添加到 tfs解决方案中的时候 出现:新项目不能成功加入源码控制
遇到此问题 可能是因为你的 解决方案文件 没有正确与 tfs服务器绑定导致的 解决方式是: 在打开任意一个源码文件的时候,打开 vs2013的 文件>> Go to File->So ...
- python命令行下tab键补全命令
在python命令行下不能使用tab键将命令进行补全,手动输入又很容易出错. 解决:tab.py #/usr/bin/env python # -*- coding:utf-8 -*- ''' 该模块 ...
- Linux下的ntpd和ntpdate
两者有个比较实质性的差异是,ntpd在实际同步时间时是一点点的校准过来时间的,最终把时间慢慢的校正对.而ntpdate不会考虑其他程序是否会阵痛,直接调整时间.一个是校准,一个是调整.另外ntpd 在 ...
- golang的连接池例子
github.com/jolestar/go-commons-pool 测试代码 package main import ( "github.com/jolestar/go-commons- ...
- 获得Unix/Linux系统中的IP、MAC地址等信息
获得Unix/Linux系统中的IP.MAC地址等信息 中高级 | 2010-07-13 16:03 | 分类:①C语言. Unix/Linux. 网络编程 ②手册 | 4,471 次阅读 ...
- [svn]svn conflict 冲突解决
转自:http://www.gezila.com/tutorials/17290.html 目录: 1. 同一处修改文件冲突 1.1. 解决方式一 1.2. 解决方式二 1.3. 解决总结 2. 手动 ...
- ultraedit15.00.0.1046注册码
ultraedit注册码,版本:15.00.0.1043·········· 用户名 MAYBELOVE 注册码 LFKKM-KIMMX-OSFEB-PMISO-ELILS-IIIHO-KKHLR ...
- VS 使用Sql Server 数据库增删改查
/// <summary> /// 执行查询语句,返回DataSet /// </summary> /// <param name="SQLString&quo ...