gpt4 book ai didi

python - 当我唯一的输入是 ndb.Query 时,如何获取 ndb.Model?

转载 作者:太空宇宙 更新时间:2023-11-04 07:02:36 25 4
gpt4 key购买 nike

假设有一个看起来像这样的 ndb.Model:

class Foo(ndb.Model):
bar = ndb.StringProperty()

我的问题是,如果我的唯一输入是 Foo.query(),我如何才能将模型作为该查询所属的对象获取?

def query_to_model(query):
# some magic
return model

Foo.query().kind 将模型名称作为字符串返回,但我没能找到将其作为对象获取的方法。

以下使用 eval 工作,但仅当模型定义在同一文件中时:

def query_to_model(query):
return eval(query.kind)

我想要比这更通用的东西。

最佳答案

使用此模型定义导入代码后,列表 ndb.Model._kind_map 应该包含它。这是魔术:

def query_to_model(query):
return ndb.Model._kind_map[query.name]

关于python - 当我唯一的输入是 ndb.Query 时,如何获取 ndb.Model?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14651975/

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