Запрос для нескольких предков одного уровня - PullRequest
0 голосов
/ 22 июля 2011

У меня есть следующие объекты:

class Book():
  team = db.StringProperty()

class Entry():
  role = db.StringProperty()

Я создаю два Book s:

book1 = Book(team='Plants').put()
book2 = Book(team='Zombies').put()

Я создаю три Entry с:

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 объединения?

1 Ответ

1 голос
/ 22 июля 2011

Если вы хотите объединить запросы для нескольких разных предков (которые не имеют общего предка), единственный способ сделать это - отдельные запросы, как вы продемонстрировали. Это ничем не отличается от того, если вы хотите запросить несколько различных значений в поле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...