412未找到匹配索引E

2024-05-09 03:41:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下错误:

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_addedbelongs_to上的过滤器对种类payment进行查询。它起作用了。在

但是,在相同的方法中,我使用date_added和{}上的过滤器对kind monthly_report进行查询,得到上面的错误。在

问题是什么?在

更新:

如果我过滤一个名字,它能起作用,对多个名字就不行了。在


Tags: to数据namereportcloudyamladdeddate
2条回答

每当你进行一个涉及你使用的所有过滤器的查询时,googleappengine的数据存储会自动创建索引。它将您的表数据存储在该索引中,以便快速提供服务。因此,无论何时部署,都要更新新索引。在

如果使用appcfg进行部署, appcfg.py -A <project-name> update_indexes .

这里的.index.yaml文件的路径。在

每当您发现没有找到匹配的索引或NeedIndexError或缺少索引错误时,该错误还会提示缺少哪个索引。{并建议您使用上面的命令更新索引。在

在本例中,将这个丢失的索引添加到index.yaml文件中。在

- kind: monthly_report
  properties:
  - name: belongs_to
  - name: date_added

我希望这有帮助。有关详细信息Datastore Indices

似乎顺序很重要,所以我改了这个:

- kind: monthly_report
  properties:
  - name: belongs_to
  - name: date_added

为此:

^{pr2}$

相关问题 更多 >