项目布局

创建一个项目目录并进入

$ mkdir flask-tutorial
$ cd flask-tutorial

然后按照安装说明设置 Python 虚拟环境并为你的项目安装 Flask。

本教程将假定你从现在开始在 flask-tutorial 目录中工作。每个代码块顶部的文件名都相对于此目录。


一个 Flask 应用可以简单到一个文件。

hello.py
from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'

然而,随着项目变得更大,将所有代码放在一个文件中会变得难以管理。Python 项目使用来将代码组织成多个模块,这些模块可以在需要时导入,本教程也将这样做。

项目目录将包含

  • flaskr/,一个 Python 包,包含你的应用代码和文件。

  • tests/,一个包含测试模块的目录。

  • .venv/,一个 Python 虚拟环境,Flask 和其他依赖项安装在此处。

  • 告诉 Python 如何安装你的项目的安装文件。

  • 版本控制配置,例如 git。你应该养成对所有项目使用某种版本控制的习惯,无论项目大小。

  • 你将来可能添加的任何其他项目文件。

最后,你的项目布局将如下所示

/home/user/Projects/flask-tutorial
├── flaskr/
│   ├── __init__.py
│   ├── db.py
│   ├── schema.sql
│   ├── auth.py
│   ├── blog.py
│   ├── templates/
│   │   ├── base.html
│   │   ├── auth/
│   │   │   ├── login.html
│   │   │   └── register.html
│   │   └── blog/
│   │       ├── create.html
│   │       ├── index.html
│   │       └── update.html
│   └── static/
│       └── style.css
├── tests/
│   ├── conftest.py
│   ├── data.sql
│   ├── test_factory.py
│   ├── test_db.py
│   ├── test_auth.py
│   └── test_blog.py
├── .venv/
├── pyproject.toml
└── MANIFEST.in

如果你正在使用版本控制,则应忽略在运行项目时生成的以下文件。可能还有其他文件取决于你使用的编辑器。一般来说,忽略你没有编写的文件。例如,使用 git

.gitignore
.venv/

*.pyc
__pycache__/

instance/

.pytest_cache/
.coverage
htmlcov/

dist/
build/
*.egg-info/

继续到应用设置