使项目可安装¶
使项目可安装意味着你可以构建一个wheel文件,并在另一个环境中安装它,就像你在项目环境中安装 Flask 一样。这使得部署项目与安装任何其他库相同,因此你使用所有标准 Python 工具来管理所有内容。
安装还附带其他好处,这些好处从教程或作为 Python 新用户可能并不明显,包括
目前,Python 和 Flask 仅在你从项目目录运行时才了解如何使用
flaskr
包。安装意味着无论你从哪里运行,你都可以导入它。你可以像管理其他包一样管理项目的依赖项,因此
pip install yourproject.whl
会安装它们。测试工具可以将测试环境与开发环境隔离。
注意
这在教程中较晚才介绍,但在未来的项目中,你应该始终从这里开始。
描述项目¶
pyproject.toml
文件描述了你的项目以及如何构建它。
pyproject.toml
¶[project]
name = "flaskr"
version = "1.0.0"
description = "The basic blog app built in the Flask tutorial."
dependencies = [
"flask",
]
[build-system]
requires = ["flit_core<4"]
build-backend = "flit_core.buildapi"
请参阅官方 打包教程 以获得对所用文件和选项的更多解释。
安装项目¶
使用 pip
在虚拟环境中安装你的项目。
$ pip install -e .
这会告诉 pip 在当前目录中找到 pyproject.toml
,并在可编辑或开发模式下安装项目。可编辑模式意味着当你对本地代码进行更改时,你只需要在更改项目的元数据(例如其依赖项)时才需要重新安装。
你可以观察到项目现在已使用 pip list
安装。
$ pip list
Package Version Location
-------------- --------- ----------------------------------
click 6.7
Flask 1.0
flaskr 1.0.0 /home/user/Projects/flask-tutorial
itsdangerous 0.24
Jinja2 2.10
MarkupSafe 1.0
pip 9.0.3
Werkzeug 0.14.1
到目前为止,你运行项目的方式没有任何变化。 --app
仍然设置为 flaskr
,flask run
仍然运行应用程序,但你可以从任何地方调用它,而不仅仅是 flask-tutorial
目录。
继续到 测试覆盖率。