# coding:utf-8 class RET: OK = "0" DBERR = "4001" NODATA = "4002" DATAEXIST = "4003" DATAERR = "4004" SESSIONERR = "4101" LOGINERR = "4102" PARAMERR = "4103" USERERR = "4104" ROLEERR = "4105" PWDERR = "4106" REQERR = "4201" IPERR = "4202" THIRDERR = "4301" IOERR = "4302" SERVERERR = "4500" UNKOWNERR = "4501" error_map = { RET.OK : u"成功", RET.DBERR : u"数据库查询错误", RET.NODATA : u"无数据", RET.DATAEXIST : u"数据已存在", RET.DATAERR : u"数据错误", RET.SESSIONERR : u"用户未登陆", RET.LOGINERR : u"用户登陆失败", RET.PARAMERR : u"参数错误", RET.USERERR : u"用户不存在或未激活", RET.ROLEERR : u"用户身份错误", RET.PWDERR : u"密码错误", RET.REQERR : u"非法请求或请求次数受限", RET.IPERR : u"IP受限", RET.THIRDERR : u"第三方系统错误", RET.IOERR : u"文件读写错误", RET.SERVERERR : u"内部错误", RET.UNKOWNERR : u"未知错误", }
项目github连接:https://github.com/dujufei/ihomepython
项目目录展现:git
工厂模式github
不直接向客户端暴露建立产品的细节,而是经过一个工厂类来创造产品,须要什么样的产品就传入对应的参数。示例:在flask建立线上环境和生产环境时,配置文件使用Config文件,因为线上和生产环境的配置文件不同,所以须要不一样的配置信息,给config类传入develop表明生产一个生产环境的配置文件,传入product表明生产一个生产环境的配置文件。数据库
蓝图--将视图函数模块化拆分--能够使用用户、商品、订单这种分法,也能够使用版本的方式分flask
utils--工具-好比一些装饰器之类的ide
libs--库---存放别人写好的一些扩展包,而不是pip下载下来的模块化
表结构关系图函数
引入models,才能够进行数据库迁移。工具
表创建以后执行spa
python manage.py db init python manage.py db migrate -m "init tables" #init tables是起的名字python manage.py db upgrade #升级下