从这节课开始,就正式进入项目的实操环节。前面课程给大家介绍过了,我们是用Flask来实现前后端的逻辑。

大家都知道,Flask本身是一个轻量级的Web框架,没有固定的项目结构。但是对于复杂项目来说,最好有一个相对清晰的结构划分,才能保证项目是可维护性和健壮性。

所以接下来,我们需要对整个的项目结构,定一个基本的规范,也就是规定什么样的文件,应该放在什么位置。

一、预设Flask项目结构

这个项目结构,是我在多年企业项目开发中,一个用起来比较顺手的模板,供大家参考。

project
├── app.py                       # 应用程序入口
├── apps
│   └── demo                     # demo 模块
│       ├── __init__.py          # demo 应用初始化,蓝图设置
│       └── views.py             # demo 应用视图函数
├── commands
│   ├── __init__.py              # 自定义命令初始化
│   └── hello.py                 # 示例自定义命令
├── config.py                    # 配置文件
├── extensions
│   ├── ext_celery.py            # Celery 集成
│   ├── ext_database.py          # 数据库设置和集成
│   ├── ext_logger.py            # 日志配置
│   ├── ext_migrate.py           # 数据库迁移设置
│   ├── ext_milvus.py            # Milvus 集成
│   ├── ext_redis.py             # Redis 配置
│   └── ext_template_filter.py   # 自定义 Jinja 模板过滤器
├── helper.py                    # 辅助函数
├── readme.txt                   # 项目文档
├── requirements.txt             # Python 依赖
├── static                       # 静态文件 (CSS, JS, 图像)
├── storage
│   ├── files                    # 上传的文件
│   └── logs
│       └── app-20240801.log     # 应用日志文件
└── tasks
    └── demo_task.py             # 示例后台任务

二、系统初始化

这个流程,在前面项目部署的时候,已经演示过了。现在我们是从零开始做开发,就先全部删掉重来一遍。

# 安装Milvus
docker-compose -f milvus-standalone-docker-compose.yml up -d

# 安装数据库和Redis
docker-compose up -d

# 安装依赖
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

# 启动测试
python app.py
flask run --debug

如果服务都能够正常起来,初始化的流程就可以了。下节课,就正式进入权限管理的模块,也就是登录和退出的功能。

本文链接:http://ichenhua.cn/edu/note/738

版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!