我正在尝试使用 App Engine NDB 对递归结构进行建模:
class Root(ndb.Model):
pass
class Node(ndb.Model):
#Node can have either a Root, or another Node as parent
pass
root_key = Key(Root, 1)
node_a = Key(Root, 1, Node, 2)
node_b = Key(Root, 1, Node, 3)
node_a_a = Key(Root, 1, Node, 2, Node, 4)
从这里,我想查询 Root 实体的直系子实体。我能做的是查询根的所有后代:
Node.query(ancestor=root_key) # returns node_a, node_b, and node_a_a
我想做的是:
Node.query(parent=root_key) # returns node_a, node_b
但似乎ndb api不支持通过(立即)父键进行查询。希望我错了。期待阐明。谢谢