Запрос NDB в App Engine с множественным неравенством?

Единственные два ответа здесь включают существенную реструктуризацию базы данных с учетом этого ограничения, но я не уверен, как это сделать в моем случае.

У меня есть список из тысяч контактов, каждый из которых имеет множество свойств. Я делаю страницу с возможностью фильтрации сразу по нескольким свойствам.

Например: Возраст ‹15, Дата добавления> 15 дней назад, Местоположение == Санта-Крус и т. Д. Потенциально потребуется тонна фильтров неравенства. Как этого добиться в GAE?


person Joren    schedule 19.04.2013    source источник


Ответы (1)


Согласно документации (для python),

Ограничения: хранилище данных накладывает некоторые ограничения на запросы. Нарушение этих правил вызовет исключения. Например, в настоящее время запрещено комбинировать слишком много фильтров, использовать неравенства для нескольких свойств или комбинировать неравенство с порядком сортировки для другого свойства. Также фильтры, ссылающиеся на несколько свойств, иногда требуют настройки вторичных индексов.

Если вы вернетесь через несколько месяцев, это может измениться. GAE меняется довольно быстро.

А пока вам придется сделать несколько запросов и объединить их в своем коде.

person MichaelJCox    schedule 19.04.2013
comment
Я начал этим заниматься, но надеялся, что кто-нибудь найдет более умное решение. :П - person Joren; 20.04.2013