帮助 FastAPI - 获取帮助¶
你喜欢 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 上“关注”(watch)FastAPI(点击右上角的 “watch” 按钮):https://github.com/fastapi/fastapi。 👀
在那里你可以选择 “Releases only”(仅发布)。
这样,每当 FastAPI 有包含 bug 修复和新功能的新版本发布时,你都会收到通知(通过电子邮件)。
与作者联系¶
你可以与 我(Sebastián Ramírez / tiangolo),即作者联系。
你可以:
- 在 GitHub 上关注我.
- 查看我创建的其他可能对你有帮助的开源项目。
- 关注我,以便在我创建新的开源项目时收到通知。
- 在 X (Twitter) 上关注我 或关注我的 Mastodon。
- 告诉我你如何使用 FastAPI(我很乐意听到这些)。
- 在我发布公告或新工具时收到提醒。
- 你也可以 在 X (Twitter) 上关注 @fastapi(这是一个单独的账号)。
- 在 LinkedIn 上关注我.
- 在我发布公告或新工具时收到提醒(虽然我更常使用 X (Twitter) 🤷♂)。
- 阅读我在 Dev.to 或 Medium 上撰写的文章(或关注我)。
- 阅读其他创意、文章,了解我创建的工具。
- 关注我以获取我发布的新内容。
发布关于 FastAPI 的推文¶
发布关于 FastAPI 的推文,让我和其他人知道你为什么喜欢它。 🎉
我很乐意了解 FastAPI 是如何被使用的,你喜欢它的哪些方面,你在什么项目/公司中使用它,等等。
为 FastAPI 投票¶
在 GitHub 上帮助他人解决问题¶
你可以尝试帮助他人解决他们的问题,地点包括:
在很多情况下,你可能已经知道这些问题的答案了。 🤓
如果你帮助了很多人解决问题,你将成为官方认证的 FastAPI 专家。 🎉
请记住,最重要的一点是:尽量友善。人们带着挫败感而来,很多时候提问的方式并不理想,但请尽你所能保持友善。 🤗
我们的愿景是让 FastAPI 社区变得友善且充满包容。同时,不要容忍对他人的欺凌或不尊重行为。我们必须互相关心。
以下是帮助他人解决问题的方法(在讨论或 issue 中):
理解问题¶
-
检查你是否理解提问者的意图和使用场景。
-
然后检查该问题(绝大多数是问题)是否清晰。
-
在很多情况下,用户提问的是基于他们想象中的解决方案,但可能存在更好的方案。如果你能更好地理解问题和使用场景,你或许能建议一个更好的替代方案。
-
如果你无法理解问题,请要求提供更多细节。
重现问题¶
大多数情况下,问题都与提问者的原始代码有关。
很多时候他们只会复制一小段代码,但这不足以重现问题。
-
你可以要求他们提供一个 最小、可重现的示例,这样你可以复制粘贴并在本地运行,以查看他们所遇到的相同错误或行为,或者更好地理解他们的使用场景。
-
如果你感到非常慷慨,可以尝试仅根据问题的描述自己创建一个示例。但请记住,这可能非常耗时,最好先要求他们澄清问题。
建议解决方案¶
-
在能够理解问题后,你可以给出可能的答案。
-
很多时候,理解他们潜在的问题或使用场景更好,因为可能存在比他们尝试的方法更好的解决方法。
请求关闭¶
如果他们回复了,很有可能你已经解决了他们的问题,恭喜,你是英雄! 🦸
-
如果问题已解决,你可以请他们:
- 在 GitHub Discussions 中:将评论标记为答案。
- 在 GitHub Issues 中:关闭该 issue。
关注 GitHub 仓库¶
你可以在 GitHub 上“关注”(watch)FastAPI(点击右上角的 “watch” 按钮):https://github.com/fastapi/fastapi。 👀
如果你选择“Watching”而不是“Releases only”,当有人创建新的 issue 或问题时,你就会收到通知。你还可以指定仅希望在出现新的 issue、讨论或 PR 等时收到通知。
然后你可以尝试帮助他们解决这些问题。
提出问题¶
你可以在 GitHub 仓库中 创建一个新问题,例如:
- 提出一个 问题 或咨询一个 疑难点。
- 建议一个新 特性。
注意:如果你这样做,我也会请你帮助其他人。 😉
审查 Pull Request¶
你可以帮助我审查来自他人的 pull request。
再次强调,请尽你所能保持友善。 🤗
以下是审查 pull request 时需要牢记的事项:
理解问题¶
-
首先,确保你理解了该 pull request 试图解决的问题。它可能在某个 GitHub Discussion 或 issue 中有更详细的讨论。
-
很有可能这个 pull request 并不必要,因为问题可以通过其他方式解决。这时你可以建议或询问该方案。
无需纠结代码风格¶
-
不必太在意提交信息风格等问题,我会手动调整并合并提交。
-
也不要担心代码风格规则,已经有自动化工具在检查这些了。
如果还有任何其他风格或一致性的需求,我会直接提出,或者通过追加提交来进行必要的修改。
检查代码¶
-
检查并阅读代码,看看它是否合理,在本地运行并查看它是否真正解决了问题。
-
然后评论说明你已经做过了,我就是这样知道你确实检查过了。
信息
遗憾的是,我不能简单地信任那些只有几个批准的 PR。
经常发生这样的情况:一些 PR 有 3 个、5 个甚至更多批准,可能是因为描述很吸引人,但当我检查时,它们实际上是损坏的、有 bug,或者并没有解决它们声称解决的问题。 😅
所以,真正阅读并运行代码,并在评论中告诉我你这样做过,真的非常重要。 🤓
- 如果 PR 可以被简化,你可以提出来,但不必太吹毛求疵,因为这往往涉及很多主观观点(我也会有我自己的 🙈),所以最好专注于基础问题。
测试¶
-
帮我检查 PR 是否有测试。
-
检查测试在 PR 之前是失败的。 🚨
-
然后检查测试在 PR 之后是通过的。 ✅
-
许多 PR 没有测试,你可以提醒他们添加测试,甚至可以自己建议一些测试。这是最耗时的工作之一,你能在这方面提供很大帮助。
-
然后也评论一下你所做的尝试,这样我就知道你检查过了。 🤓
创建 Pull Request¶
你可以通过 Pull Request 为源代码 做出贡献,例如:
- 修复你在文档中发现的拼写错误。
- 通过 编辑此文件 分享你创建或发现的关于 FastAPI 的文章、视频或播客。
- 确保将你的链接添加到相应部分的开头。
- 帮助将文档 翻译成你的语言。
- 你也可以帮助审查他人创建的翻译。
- 提议增加新的文档章节。
- 修复现有的 issue/bug。
- 确保添加测试。
- 添加新特性。
- 确保添加测试。
- 如果相关,请确保添加文档。
协助维护 FastAPI¶
帮我维护 FastAPI! 🤓
有很多工作要做,而其中大部分工作,你都可以完成。
你现在可以做的主要任务是:
- 在 GitHub 上帮助他人解决问题(见上文)。
- 审查 Pull Request(见上文)。
这两项任务是最耗时的。这正是维护 FastAPI 的主要工作。
如果你能在这方面帮助我,你就是在帮我维护 FastAPI,并确保它能更快、更好地发展。 🚀
加入聊天群组¶
加入 👥 Discord 聊天服务器 👥,与 FastAPI 社区中的其他人交流。
不要在聊天群组中提问¶
请记住,聊天群组允许更“自由的交流”,很容易问出过于笼统、难以回答的问题,因此你可能收不到回复。
在 GitHub 上,模板会引导你写出准确的问题,以便你能更容易地获得满意的答案,甚至在提问之前就能自己解决问题。在 GitHub 上,我可以确保我总是回答每一个问题,即使有时需要一些时间。我无法在聊天系统中做到这一点。 😅
聊天系统中的对话也不像 GitHub 那样易于检索,因此问题和答案可能会在聊天记录中丢失。而且只有在 GitHub 上的提问和回答才能算作成为 FastAPI 专家 的标准,所以你在 GitHub 上很可能会得到更多关注。
另一方面,聊天系统中也有成千上万的用户,所以你几乎随时都有很大机会找到聊天的人。 😄
赞助作者¶
如果你的 产品/公司 依赖于 FastAPI 或与 FastAPI 相关,并且你想接触它的用户,你可以通过 GitHub Sponsors 赞助作者(我)。根据赞助层级,你可能会获得一些额外的福利,例如在文档中显示徽章。 🎁
谢谢! 🚀