2024-06-26 00:12:21 发布
网友
我想在父子层次结构中存储数据。我想用ndb.put_multi多个功能。问题是在我使用put multi存储父模型后,如何获得父对象的相应键。请提出解决方案
如果已经对父键使用了put_multi,则已经有了它们。在
例如
list_of_parent_keys = ndb.put_multi(list_of_entities) child_keys = [] for parent_key in list_of_parent_keys: child_key = ndb.Key(Parent, parent_key, Child, child_key) child_keys.append(child_key)
诀窍是存储一个“祖父母”或根实体,并让所有父实体在其键中引用它:
root = BaseClass() root.put() parent = Parent(parent=root) parent.put() child = Child(parent=parent) child.put()
现在可以使用Instance methods检查子密钥:
{根是你想要一个实体的原因^:
parents = Parent.query(ancestor=root) children = Child.query(ancestor=root)
然后可以检查child.key.parent()以查看其父键。在
child.key.parent()
如果已经对父键使用了put_multi,则已经有了它们。在
例如
诀窍是存储一个“祖父母”或根实体,并让所有父实体在其键中引用它:
现在可以使用Instance methods检查子密钥:
^{pr2}${根是你想要一个实体的原因^:
然后可以检查
child.key.parent()
以查看其父键。在相关问题 更多 >
编程相关推荐