gpt4 book ai didi

python - 使用 GraphQL 和 Graphene-Python 从数据库中选择仅请求的字段

转载 作者:行者123 更新时间:2023-12-05 07:24:35 42 4
gpt4 key购买 nike


我正在使用 Graphene 构建一个 Python Flask-GraphQL API,并且一直在徘徊是否有任何通用的解决方案可以在解析器中仅从数据库中请求所需的字段。

假设有一个基本用户信息的请求:

{
users {
id
name
}
}

而且用户实体的数据库结构要复杂得多,而且“数据量大”。现在人们显然会尝试避免从数据库中获取所有用户信息,只是为了在服务器端对其进行过滤并仅将请求的 ID 和名称传递给客户端。

虽然我确信这是一个常见问题,但我一直在徘徊在这种情况下哪些解决方案被认为是最佳的(或者甚至有可能制定一个不绑定(bind)到特定数据结构的通用解决方案,因为可能有一些涉及额外的数据加载和加入)。

显然可以通过从解析器的信息参数中获取请求的字段 asts 来手动完成。
顺便说一句,我目前也没有绑定(bind)到特定的数据库或像 SQLAlchemy 这样的数据提供者,因为我正试图围绕抽象用例进行思考。非常感谢您对此的想法和经验。要么抽象​​,要么使用实际的提供者和数据库。
谢谢。

最佳答案

这里有一个特定于 SQLAlchemy 的复杂答案 Limiting SQL query to defined fields/columns in Graphene-SQLAlchemy

正如那里的一些评论所述,针对特定 ORM 已经非常复杂,因此不确定是否有可能以抽象的方式回答它。

关于python - 使用 GraphQL 和 Graphene-Python 从数据库中选择仅请求的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55336697/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com