我有以下错误:
412 no matching index found. recommended index is:
- kind: monthly_report
properties:
- name: belongs_to
- name: date_added
我使用的是python3.5、数据存储和远程Django项目,它通过googlecloudapi(googlecloud==0.24.0)访问数据存储。在
我运行命令:
google cloud datastore cleanup-indexes index.yaml
google cloud datastore create-indexes index.yaml
创建索引:
索引.yaml:
^{pr2}$我使用date_added
和belongs_to
上的过滤器对种类payment
进行查询。它起作用了。在
但是,在相同的方法中,我使用date_added
和{monthly_report
进行查询,得到上面的错误。在
问题是什么?在
更新:
如果我过滤一个名字,它能起作用,对多个名字就不行了。在
每当你进行一个涉及你使用的所有过滤器的查询时,googleappengine的数据存储会自动创建索引。它将您的表数据存储在该索引中,以便快速提供服务。因此,无论何时部署,都要更新新索引。在
如果使用appcfg进行部署,
appcfg.py -A <project-name> update_indexes .
这里的
.
是index.yaml
文件的路径。在每当您发现没有找到匹配的索引或
NeedIndexError
或缺少索引错误时,该错误还会提示缺少哪个索引。{并建议您使用上面的命令更新索引。在在本例中,将这个丢失的索引添加到
index.yaml
文件中。在我希望这有帮助。有关详细信息Datastore Indices
似乎顺序很重要,所以我改了这个:
为此:
^{pr2}$相关问题 更多 >
编程相关推荐