Flask程序的基本项目结构

一、前言

  尽管在单一脚本中编写小型 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 用于启动程序以及其他的程序任务。

你可能感兴趣的:(Flask程序的基本项目结构)