Хранилище данных Google App Engine не поддерживает оператор +

StackOverflow https://stackoverflow.com/questions/1071425

Вопрос

Я играю с GAE, и мне нужно сделать запрос примерно такого типа:

select from models.Post as p where (p.votesUp + p.votesDown > 10)

Но я получаю эту ошибку: Хранилище данных App Engine не поддерживает оператор +

Какой подход может быть хорошим для замены этого запроса?

Это было полезно?

Решение

Очевидная вещь, которая бросается в глаза, — это поместить в p метод, имеющий p.netVotes, и выполнить запрос к нему.

Но я недостаточно знаком с App Engine (я только начал его изучать), чтобы быть уверенным, что это работает.

Другие советы

Это похоже на проблему с счетчики в движке приложения.Самое простое решение, которое пришло мне в голову, — добавить атрибут voicesTotal, который обновляется каждый раз, когда обновляются voicesUp и voicesDown.Таким образом, при запросе voicesTotal > foo_val не требуется больших вычислений.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top