我有以下实体:
class Book():
team = db.StringProperty()
class Entry():
role = db.StringProperty()
我创建了两个Book
s:
book1 = Book(team='Plants').put()
book2 = Book(team='Zombies').put()
我创建了三个Entry
s:
entry1 = Entry(parent=book1, role='Peashooter').put()
entry2 = Entry(parent=book2, role='Gargantuar').put()
entry3 = Entry(parent=book2, role='Flag Zombie').put()
我可以查询'Plants'
Book
:
query = Entry.all().ancestor(book1).fetch(100)
我想查询几本书。我只能想到list
串联:
list1 = Entry.all().ancestor(book1).fetch(100)
list2 = Entry.all().ancestor(book2).fetch(100)
query = list1 + list2
除了list
连接之外,还有更优雅的方法吗?
答案 0 :(得分:1)
如果您想要为几个不同的祖先(不共享共同的祖先)组合查询,唯一的方法是使用单独的查询,如您所示。这与您想要在字段中查询多个不同的值没有什么不同。