我在使用Google的应用引擎索引时遇到了问题。当通过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文件包含下面生成的确切的“建议”索引#自动生成:
- kind: Bar
ancestor: yes
properties:
- name: rating
direction: desc
我可能漏掉了什么吗?我删除了index.yaml文件并再次通过命令行部署了应用程序,上传的文件减少了一个,因此index.yaml文件在那里。
本地一切正常。我正在使用最新的Mac OSx。部署所使用的命令是:
appcfg.py -A app-name --oauth2 update app
我实现的数据存储库基本上是根据留言板教程应用程序而来。
任何帮助都将不胜感激。
编辑:
我的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)