【发布时间】:2013-07-10 11:42:34
【问题描述】:
模型 ID 在所有类别中都是唯一的。 我想知道如何在不知道模型类名的情况下使用“get_by_id()”。
例如,在
MyModel.get_by_id(42)
需要使用“MyModel”类
还有其他方式
ndb.Key(MyModel, id).get()
也需要类名。
我认为没有类名可能是可行的。我说得对吗?
感谢您的回答。
【问题讨论】:
标签: app-engine-ndb
模型 ID 在所有类别中都是唯一的。 我想知道如何在不知道模型类名的情况下使用“get_by_id()”。
例如,在
MyModel.get_by_id(42)
需要使用“MyModel”类
还有其他方式
ndb.Key(MyModel, id).get()
也需要类名。
我认为没有类名可能是可行的。我说得对吗?
感谢您的回答。
【问题讨论】:
标签: app-engine-ndb
不,你不能。首先,自动分配的 ID 在模型之间不是唯一的。其次,实体有一个由一对或多对(模型、ID)组成的“键”——模型(== 类名)是键的重要组成部分。
您可能会对查询感到困惑。可以(尽管不推荐)查询“所有实体”,即不指定模型。但这显然不会扩展。
【讨论】: