\subsection{约定项目结构}
Flask对于项目结构没有过多的硬性要求,甚至一个单独的文件也可以构成一个网站服务。但实际上对于项目结构还是约定了一个推荐设置。项目根目录中需要包含以下内容:
- 应用包目录,包含网站应用全部代码和文件。
__init__.py
,应用包初始化代码及核心启动文件。templates/
,模板文件目录。static/
,静态资源文件目录。
tests/
,包含全部单元测试及其他测试代码。venv/
,虚拟环境目录。setup.py
,项目安装文件。wsgi.py
,WSGI服务启动文件,可选。app.py
,应用启动文件,可选。uwsgi.ini
,uWSGI配置文件,可选。uwsgi.yml
,uWSGI配置文件,可选。
其形成的目录结构示意如下:
- project-root/
- project-package/
- init.py
- db.py
- routes.py
- templates/
- statics/
- css/
- js/
- images/
- tests/
- venv/
- .git/
- setup.py
- wsgi.py
- uwsgi.ini
- uwsgi.yml
- .gitignore
- project-package/