跳转至

帮助 FastAPI - 获取帮助

🌐 由 AI 与人类协作翻译

本翻译由人类引导的 AI 生成。🤝

可能存在误解原意或不够自然等问题。🤖

你可以通过帮助我们更好地引导 AI LLM来改进此翻译。

英文版本

你喜欢 FastAPI 吗?

想帮助 FastAPI、其他用户和作者吗?

或者你想获取 FastAPI 的帮助?

有很多非常简单的方式可以帮忙(有些只需点一两下)。

同样,也有多种途径可以获得帮助。

订阅新闻邮件

你可以订阅(不频繁的)FastAPI and friends 新闻邮件,获取如下更新:

  • FastAPI 及其小伙伴的新闻 🚀
  • 指南 📝
  • 功能 ✨
  • 破坏性更改 🚨
  • 使用技巧 ✅

在 X (Twitter) 上关注 FastAPI

X (Twitter) 上关注 @fastapi 获取 FastAPI 的最新动态。🐦

在 GitHub 上为 FastAPI 加星

你可以在 GitHub 上为 FastAPI 点亮「星标」(点击右上角的星形按钮):https://github.com/fastapi/fastapi。⭐️

点亮星标后,其他用户更容易发现它,并看到它已经对许多人有帮助。

关注 GitHub 资源库的版本发布

你可以在 GitHub 上「关注」FastAPI(点击右上角的「watch」按钮):https://github.com/fastapi/fastapi。👀

在那里你可以选择「Releases only」。

这样做之后,每当 FastAPI 发布新版本(包含修复和新功能),你都会收到通知(邮件)。

联系作者

你可以联系我(Sebastián Ramírez / tiangolo,作者本人。

你可以:

  • GitHub 上关注我
    • 了解我创建的其他开源项目,也许对你有帮助。
    • 关注我何时创建新的开源项目。
  • 关注我在 X (Twitter)Mastodon
    • 告诉我你如何使用 FastAPI(我很喜欢听这些)。
    • 获取我发布公告或新工具的消息。
    • 你也可以关注 @fastapi on X (Twitter)(独立账号)。
  • LinkedIn 上关注我
    • 获取我发布公告或新工具的消息(不过我更常用 X (Twitter) 🤷‍♂)。
  • 阅读我在 Dev.toMedium 上的文章(或关注我)。
    • 阅读我的其他想法、文章,以及我创建的工具。
    • 关注我,这样当我发布新文章时你会第一时间看到。

发推谈谈 FastAPI

发推谈谈 FastAPI,告诉我和大家你为什么喜欢它。🎉

我很高兴听到 FastAPI 的使用情况、你喜欢它的哪些点、你在哪个项目/公司使用它,等等。

为 FastAPI 投票

在 GitHub 上帮别人解答问题

你可以尝试在以下地方帮助他人解答问题:

很多情况下,你也许已经知道这些问题的答案了。🤓

如果你帮助了很多人解答问题,你会成为官方的 FastAPI 专家。🎉

只要记住,最重要的一点是:尽量友善。人们带着挫败感而来,很多时候他们的提问方式并不理想,但请尽你所能地友好对待。🤗

我们的目标是让 FastAPI 社区友好且包容。同时,也不要接受对他人的霸凌或不尊重。我们需要彼此照顾。


以下是如何帮助他人解答问题(在 Discussions 或 Issues 中):

理解问题

  • 看看你是否能理解提问者的目的和使用场景。

  • 然后检查问题(绝大多数是提问)是否清晰

  • 很多时候,问题是围绕提问者想象中的解决方案,但可能有更好的方案。如果你更好地理解了问题和使用场景,你就可能提出更合适的替代方案

  • 如果你没能理解问题,请请求更多细节

复现问题

在大多数情况下与问题相关的都是提问者的原始代码

很多时候他们只会粘贴一小段代码,但这不足以复现问题

  • 你可以请他们提供一个可最小复现的示例,你可以复制粘贴并在本地运行,看到与他们相同的错误或行为,或者更好地理解他们的用例。

  • 如果你非常热心,你也可以尝试仅根据问题描述自己构造一个示例。不过要记住,这可能会花很多时间,通常先请他们澄清问题会更好。

提出解决方案

  • 在能够理解问题之后,你可以给出一个可能的答案

  • 很多情况下,更好的是去理解他们底层的问题或场景,因为可能存在比他们尝试的方法更好的解决方式。

请求关闭问题

如果他们回复了,很有可能你已经解决了他们的问题,恭喜,你是英雄!🦸

  • 现在,如果问题已解决,你可以请他们:
    • 在 GitHub Discussions 中:将你的评论标记为答案
    • 在 GitHub Issues 中:关闭该 issue。

关注 GitHub 资源库

你可以在 GitHub 上「关注」FastAPI(点击右上角的「watch」按钮):https://github.com/fastapi/fastapi。👀

如果你选择「Watching」而非「Releases only」,当有人创建新的 issue 或问题时你会收到通知。你也可以指定只通知新 issues、discussions、PR 等。

然后你就可以尝试帮助他们解决这些问题。

提问

你可以在 GitHub 资源库中创建一个新问题(Question),例如:

  • 提出一个问题或关于某个问题的求助。
  • 建议一个新的功能

注意:如果你这么做了,我也会请你去帮助其他人。😉

审阅 Pull Request

你可以帮我审阅他人的 Pull Request。

再次提醒,请尽力保持友善。🤗


下面是需要注意的点,以及如何审阅一个 Pull Request:

理解问题

  • 首先,确保你理解这个 PR 要解决的问题。它可能在 GitHub Discussion 或 issue 中有更长的讨论。

  • 也有很大可能这个 PR 实际上并不需要,因为问题可以用不同方式解决。这种情况下你可以提出或询问该方案。

不用过分担心风格

  • 不用太在意提交信息风格等,我会在合并时 squash 并手动调整提交信息。

  • 也不用过分担心代码风格规则,已经有自动化工具在检查。

如果还有其他风格或一致性需求,我会直接提出,或者我会在其上追加提交做必要修改。

检查代码

  • 检查并阅读代码,看看是否说得通,在本地运行并确认它确实解决了问题。

  • 然后评论说明你已经这样做了,这样我就知道你确实检查过。

信息

不幸的是,我不能仅仅信任那些有很多人批准的 PR。

多次发生过这样的情况:PR 有 3、5 个甚至更多的批准,可能是因为描述很吸引人,但当我检查时,它们实际上是坏的、有 bug,或者并没有解决它声称要解决的问题。😅

所以,真正重要的是你确实读过并运行过代码,并在评论里告诉我你做过这些。🤓

  • 如果 PR 可以在某些方面简化,你可以提出建议,但没必要过分挑剔,很多东西比较主观(我也会有我自己的看法 🙈),因此尽量关注关键点更好。

测试

  • 帮我检查 PR 是否包含测试

  • 确认在合并 PR 之前,测试会失败。🚨

  • 然后确认合并 PR 之后,测试能通过。✅

  • 很多 PR 没有测试,你可以提醒他们添加测试,或者你甚至可以自己建议一些测试。这是最耗时的部分之一,你能在这方面帮上大忙。

  • 然后也请评论你做了哪些验证,这样我就知道你检查过。🤓

创建 Pull Request

你可以通过 Pull Request 为源代码做贡献,例如:

  • 修正文档中的一个错别字。
  • 通过编辑这个文件分享你创建或发现的关于 FastAPI 的文章、视频或播客。
    • 请确保把你的链接添加到相应区块的开头。
  • 帮助把文档翻译成你的语言。
    • 你也可以审阅他人创建的翻译。
  • 提议新增文档章节。
  • 修复现有 issue/bug。
    • 记得添加测试。
  • 添加新功能。
    • 记得添加测试。
    • 如果相关,记得补充文档。

帮忙维护 FastAPI

帮我一起维护 FastAPI 吧!🤓

有很多工作要做,其中大部分其实都能做。

你现在就能做的主要事情有:

这两项工作是最耗时的。这也是维护 FastAPI 的主要工作。

如果你能在这方面帮我,你就是在帮我维护 FastAPI,并确保它更快更好地前进。🚀

加入聊天

加入 👥 Discord 聊天服务器 👥,和 FastAPI 社区的小伙伴们一起交流。

提示

关于提问,请在 GitHub Discussions 中发布,这样更有机会得到 FastAPI 专家 的帮助。

聊天仅用于其他日常交流。

别在聊天里提问

请记住,聊天更偏向“自由交流”,很容易提出过于笼统、难以回答的问题,因此你可能收不到解答。

在 GitHub 中,模板会引导你写出恰当的问题,从而更容易获得好的回答,甚至在提问之前就能自己解决。而且在 GitHub 里,我能尽量确保最终回复每个问题,即使这需要一些时间。对聊天系统来说,我个人做不到这一点。😅

聊天系统中的对话也不像 GitHub 那样容易搜索,因此问答可能在聊天中淹没。而且只有在 GitHub 中的问答才会计入成为 FastAPI 专家 的贡献,所以你在 GitHub 上更可能获得关注。

另一方面,聊天系统里有成千上万的用户,你几乎随时都能在那里找到聊得来的人。😄

如果你的产品/公司依赖或与 FastAPI 相关,并且你想触达它的用户,你可以通过 GitHub sponsors 赞助作者(我)。根据赞助层级,你还可能获得一些额外福利,比如在文档中展示徽章。🎁


谢谢!🚀