项目进度记录

Date Desc
2020.07.02 文档创建
-
-
-
-
-
-

背景:随着学习Flask的不断深入,我决定通过从零开始,开发一个测试平台作为练手项目,以此来巩固加深学习成果。

经过考虑,最终决定项目将采用前后端分离的方式,接口使用Flask框架开发,代码整体采用 hybird 风格。目前的项目结构如下,虽然还很不完整,但是随着开发的不断深入,项目结构将会逐渐地补充完善,我也会在本文中不断更新记录。

autoline/
    - api/  # 资源接口
    - external/ # 外部脚本
    - logs/     # 日志根目录 
    - models/   # 模型类
    - schemas/  # ORM序列化/反序列化类
    - test/     # 单元测试
    - utils/    # 通用方法
    __init__.py # 工厂函数
    code_enum.py    # api响应状态码枚举类
    config.py   # 项目配置类
    extensions.py   # flask扩展类实例化
.env        # 存放敏感信息(如数据库URI,SECRET_KEY等)
.flaskenv   # 存放和flask相关的公开环境变量(如FLASK_APP、FLASK_CONFIG等)
.gitignore
Pipfile     # 项目依赖
Pipfile.lock

虽然Flask RESTful 开发相关的 extensions 有不少,但是原生Flask对 RESTful 的支持已经做的很好。在我的项目中,刚开始开发接口时曾使用flask-restful,但是通过一段学习和使用后,我还是觉得flask.views原生的MethodView 更为方便,所以后续我重写了接口,舍弃了flask-restful.

Pipfile中存放的是项目中使用到的依赖, 后续随着开发的深入,我会持续进行更新,目前内容如下:

[[source]]
url = "https://pypi.tuna.tsinghua.edu.cn/simple"
verify_ssl = true
name = "tsinghua"

[dev-packages]
watchdog = "*"

[packages]
flask = "~=1.1.2"
jinja2 = "*"
python-dotenv = "~=0.10.3"
python-jenkins = "~=1.6.0"
flask-sqlalchemy = "~=2.4.1"
faker = "~=4.0.0"
pymysql = "~=0.9.3"
flask-httpauth = "~=3.3.0"
flask-cors = "~=3.0.8"
requests = "*"
sentry-sdk = {extras = ["flask"],version = "*"}
flask-marshmallow = "~=0.13.0"
marshmallow-sqlalchemy = "~=0.23.1"

【To Be Continued...】

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章