FastApi教程|开发-贡献

发表时间:2020-03-09

首先,您可能想了解 帮助FastAPI和获得帮助 的基本方法 。

开发

如果您已经克隆了存储库,并且知道需要深入研究代码,那么这里有一些准则来设置您的环境。

与虚拟环境 venv

您可以使用Python的 venv 模块 在目录中创建虚拟环境 :

$ python -m venv env

这将创建一个 ./env/ 包含Python二进制文件 的目录 ,然后您将能够为该隔离的环境安装软件包。

激活环境

使用以下方法激活新环境:

$ source ./env/bin/activate

或在Windows的PowerShell中:

$ .\env\Scripts\Activate.ps1

或者,如果您将Bash用于Windows(例如 Git Bash ):

$ source ./env/Scripts/activate

要检查其是否有效,请使用:

$ which pip

some/directory/fastapi/env/bin/pip

如果它在显示 pip 二进制文件, env/bin/pip 那么它起作用了。 ?

或在Windows PowerShell中:

小费

每次 pip 在该环境下 安装新软件包时 ,请再次激活该环境。

这样可以确保,如果您使用由该程序包安装的终端程序(如 flit ),则使用本地环境中的程序,而不使用可以全局安装的任何其他程序。

过滤

FastAPI 使用 Flit 来构建,打包和发布项目。

如上所述激活环境后,安装 flit

$ pip install flit

现在重新激活环境,以确保您使用的是 flit 刚刚安装的(而不是全局的)。

现在用于 flit 安装开发依赖项:

$ flit install --deps develop --symlink

它将在本地环境中安装所有依赖项和本地FastAPI。

使用本地FastAPI

如果您创建一个导入并使用FastAPI的Python文件,并在本地环境中使用Python运行该文件,则它将使用您的本地FastAPI源代码。

并且,如果您更新了本地FastAPI源代码(与一起安装) --symlink ,则当您再次运行该Python文件时,它将使用您刚编辑的FastAPI的新版本。

这样,您不必“安装”本地版本即可测试所有更改。

格式

您可以运行一个脚本来格式化和清除所有代码:

$ bash scripts/format.sh

它还会自动对所有进口商品进行分类。

为了使它们正确排序,您需要使用上面部分中的命令在您的环境中本地安装FastAPI:

$ flit install --symlink

格式进口

还有另一个脚本可以格式化所有导入,并确保您没有未使用的导入:

$ bash scripts/format-imports.sh

由于它在另一个命令之后运行,并修改和还原许多文件,因此运行时间会更长一些,因此可能更容易使用 scripts/format.sh scripts/format-imports.sh 仅在提交之前 使用 。

文件

该文档使用 MkDocs

目录中的所有文档均为Markdown格式 ./docs

许多教程都有代码块。

在大多数情况下,这些代码块是可以按原样运行的实际完整应用程序。

实际上,这些代码块不是写在Markdown内的,它们是 ./docs/src/ 目录 中的Python文件 。

生成站点时,这些Python文件会包含/注入到文档中。

测试文档

实际上,大多数测试都是针对文档中的示例源文件运行的。

这有助于确保:

  • 该文档是最新的。
  • 文档示例可以按原样运行。
  • 文档涵盖了大多数功能,并通过测试覆盖范围来确保。

在本地开发期间,有一个脚本可以构建站点并检查是否有任何更改,并实时重新加载:

$ bash scripts/docs-live.sh

它将在上提供文档 http://0.0.0.0:8008

这样,您可以编辑文档/源文件并实时查看更改。

同时使用应用和文档

如果使用以下示例运行示例:

$ uvicorn tutorial001:app --reload

因为默认情况下Uvicorn将使用port 8000 ,所以 port上 的文档 8008 不会冲突。

测试

您可以在本地运行一个脚本来测试所有代码并生成HTML覆盖率报告:

$ bash scripts/test-cov-html.sh

该命令生成一个目录 ./htmlcov/ ,如果您 ./htmlcov/index.html 在浏览器中 打开文件 ,则可以交互地浏览测试所覆盖的代码区域,并注意是否缺少任何区域。

在编辑器中测试

如果要在编辑器中使用集成测试,请添加 ./docs/src PYTHONPATH 变量中。

例如,在VS Code中,您可以使用以下命令创建文件 .env

PYTHONPATH=./docs/src

文章来源互联网,如有侵权,请联系管理员删除。邮箱:417803890@qq.com / QQ:417803890

微配音

Python Free

邮箱:417803890@qq.com
QQ:417803890

皖ICP备19001818号
© 2019 copyright www.pythonf.cn - All rights reserved

微信扫一扫关注公众号:

联系方式

Python Free