Запрос AppEngine для None parent - PullRequest
1 голос
/ 26 июля 2010

Я пытаюсь найти все объекты, у которых нет родителя (то есть, которые были созданы с parent = None).Использование M.all().filter("parent = ", None).fetch(100) не дает никаких результатов, даже если у некоторых объектов нет родителя.

Что я делаю не так?

Ответы [ 2 ]

2 голосов
/ 26 июля 2010

Нет способа специально запрашивать корневые объекты.Вам нужно либо использовать внешнюю информацию (например, ни у одного объекта типа Foo нет родителей), либо добавить свойство, которое указывает, является ли объект корневым объектом или нет.

1 голос
/ 26 июля 2010

Вы не используете filter() для запроса предка. Попробуйте вместо:

M.all().ancestor(None).fetch(100)

Редактировать: хм, это не сработает, по-видимому (я клянусь, я где-то сделал это). Поэтому вам нужно сохранить дополнительное свойство как флаг для корневых объектов.

...