Реализация запросов «Начинается с» и «Заканчивается на» с помощью Google App Engine - PullRequest
5 голосов
/ 12 октября 2009

Интересно, может ли кто-нибудь дать какое-нибудь руководство о том, как я мог бы реализовать начальный или конечный запрос к модели хранилища данных с использованием Python?

В псевдокоде это будет работать примерно так ...

Запрос для всех объектов A, где свойство P начинается с X

или

Запрос для всех объектов B, где свойство P заканчивается на X

Спасибо, Мэтт

Ответы [ 2 ]

16 голосов
/ 12 октября 2009

Вы можете выполнить запрос «начинается с», используя фильтры неравенства:

MyModel.all().filter('prop >=', prefix).filter('prop <', prefix + u'\ufffd')

Выполнение запроса «заканчивается с» потребует сохранения обратной строки, а затем применения той же тактики, что и выше.

2 голосов
/ 12 октября 2009

Кажется, вы не можете сделать это для общего случая, но можете сделать это для поиска префикса (начинается с):

Поиск по шаблону в Appengine in python

...