灵感源自SpringBoot
,集成了Flask、Flask-SQLAlchemy、Flask-Cors、Redis、HttpX、PIL、PyYaml
等框架。采用登录验证装饰器控制接口访问权限,会话管理采用Token
+ Redis
方式,为什么不用JWT?因为我想踢掉其他客户端会话。另外集成了字符串、日期时间等工具包,方便快速开发。
项目使用Python>=3.7
,强烈推荐使用venv
环境,避免环境冲突;整个项目应关注于application
目录下的内容,其他目录为辅助工具。
- 编辑
config-template.yaml
配置模板。 - 将配置信息复制到
config.yaml
(新建)中。
- 在
application/model
目录,创建数据库模型,并在application/model/__init__.py
导入。 - 在
application/mapper
目录,创建表操作。 - 在
application/logic
目录,创建业务逻辑。 - 在
application/controller
目录,创建控制器。 - 注册蓝图、异常均在
application/__init__.py
。
- Run:
python main.py
。
注意: Windows下自动使用Flask默认的HTTP服务器,Linux下将自动使用gunicorn
作为HTTP服务器。
- 在
application/config
自定义配置。 - 在
application/enumeration
自定义枚举类型。 - 在
application/util
自定义工具类。 - 在
application/exception
自定义异常类。 - 在
application/middleware
自定义中间件。