Flask程序的基本项目结构
2018-04-12 本文已影响0人
道书简
一、前言
尽管在单一脚本中编写小型 Web 程序很方便,但这种方法并不能广泛使用。程序变复杂后,使用单个大型源码文件会导致很多问题。
不同于大多数其他的 Web 框架,Flask 并不强制要求大型项目使用特定的组织方式,程序结构的组织方式完全由开发者决定。下文中我们将介绍一种使用包和模块组织大型程序 的方式。
二、Flask 程序的基本结构
多文件 Flask 程序的基本结构:
|-flasky
|-app/
|-templates/
|-static/
|-main/
|-__init__.py
|-errors.py
|-forms.py
|-views.py
|-__init__.py
|-email.py
|-models.py
|-migrations/
|-tests/
|-__init__.py
|-test*.py
|-venv/
|-requirements.txt
|-config.py
|-manage.py
三、结构说明
这种结构有 4 个顶级文件夹:
• Flask 程序一般都保存在名为 app 的包中;
• migrations 文件夹包含数据库迁移脚本;
• 单元测试编写在 tests 包中;
• venv 文件夹包含 Python 虚拟环境。
同时还创建了一些新文件:
• requirements.txt 列出了所有依赖包,便于在其他电脑中生成相同的虚拟环境;
• config.py 存储配置;
• manage.py 用于启动程序以及其他的程序任务。