ValidationException:该表没有指定的索引:GameTitleIndex

Ayu*_*ood 5 node.js amazon-dynamodb vogels

我正在使用 Vogels,NodeJS 的 DynamoDB 数据映射器。我正在根据 Vogels 的文档查询全局索引。我所做的就是创建一个具有全局二级索引的模型,如下所示:

let MyModel = vogels.define('MyModel', {
  hashKey: 'uuid',
  timestamps: true,
  updatedAt: 'updated_at',
  createdAt: 'created_at',
  schema: MyModelBaseSchema,
  indexes : [{ 
    hashKey : 'gameTitle', rangeKey : 'topScore', name : 'GameTitleIndex', type : 'global'
  }]
});
Run Code Online (Sandbox Code Playgroud)

并查询该索引

MyModel.query('game 1')
  .usingIndex('GameTitleIndex')
  .loadAll()
  .select("COUNT");
Run Code Online (Sandbox Code Playgroud)

运行任何测试时都会显示异常ValidationException: The table does not have the specified index: GameTitleIndex

根据文档,这就是我获取数据所需要做的全部工作。查询该索引时是否遗漏了任何内容?任何答案将不胜感激。提前致谢。

Ayu*_*ood 1

如果有人遇到同样的问题,答案如下:在模型中创建新索引(本地二级索引或全局二级索引)后,将运行迁移。只有在此之后该表才会具有指定的索引。请参阅此问题以获得更多说明。