У меня возникают проблемы с индексами Google App Engine. При запуске моего приложения через приложение GoogleAppEngineLauncher приложение работает нормально. При развертывании приложения я получаю следующую ошибку:
NeedIndexError: no matching index found.
The suggested index for this query is:
- kind: Bar
ancestor: yes
properties:
- name: rating
direction: desc
Ошибка возникает после этой строки кода:
bars = bar_query.fetch(10)
Перед приведенной выше строкой кода он читает:
bar_query = Bar.query(ancestor=guestbook_key(guestbook_name)).order(-Bar.rating)
Мой файл index.yaml содержит точный "предложенный" индекс ниже # AUTOGENERATED:
- kind: Bar
ancestor: yes
properties:
- name: rating
direction: desc
Может, я что-то упустил? Я удалил файл index.yaml и снова развернул приложение (через командную строку), и один файл был загружен, поэтому файл index.yaml существует.
Все работает нормально локально. Я работаю над последним Mac OSx. Команда, используемая для развертывания, была следующей:
appcfg.py -A app-name --oauth2 update app
Реализовано хранилище, основанное на учебном приложении гостевой книги.
Любая помощь будет принята с благодарностью.
EDIT:
My ndb.Model определяется следующим образом:
class Bar(ndb.Model):
content = ndb.StringProperty(indexed=False)
lat = ndb.FloatProperty(indexed=False)
lon = ndb.FloatProperty(indexed=False)
rating = ndb.IntegerProperty(indexed=True)
url = ndb.TextProperty(indexed=False)