Использование сортировки GQL по количеству ListProperty

Если у меня есть объект db.Model, такой как:

class Foo(db.Model):
    title = db.StringProperty()
    bars = db.ListProperty(db.Key)

и я хотел бы запросить в хранилище данных все сущности Foo и отсортировать те, которые установлены объектами Foo, которые имеют наибольшее количество баров, как бы я написал GQL?

Я надеялся на что-то простое, как:

fooQuery = db.GqlQuery("SELECT * FROM Foo ORDER BY len(bars) DESC"

но это не работает...

1 ответ

Решение

Если вам нужно сделать что-то подобное, вам нужно будет включить другое IntegerProperty для хранения длины и синхронизировать его самостоятельно. GQL не поддерживает этот запрос.

Другие вопросы по тегам