Как вы запрашиваете с помощью индекса в Architect Serverless Framework? - PullRequest
1 голос
/ 10 июля 2020

Я пытаюсь выполнить запрос с использованием индекса, но продолжаю получать эту ошибку:

ValidationException: Query condition missed key schema element: trackID

Вот мой .ar c файл

@tables
skytracks
  trackID *String
  _ttl TTL

@indexes
skytracks
  skyTrackType *String

Вот соответствующая часть обработчика http get:

const skyTrackType = req.queryStringParameters.skytracktype
const data = await arc.tables()
const trackingData = await data.skytracks.query({
      KeyConditionExpression: `skyTrackType = :skyTrackType`,
      ExpressionAttributeValues: {
        ':skyTrackType': skyTrackType
      }
    })

1 Ответ

1 голос
/ 21 июля 2020

Architect автоматически называет индекс attribute-index

Это необходимо добавить к запросу в вопросе: IndexName: 'skyTrackType-index'

const trackingData = await data.skytracks.query({
      KeyConditionExpression: `skyTrackType = :skyTrackType`,
      IndexName: 'skyTrackType-index',
      ExpressionAttributeValues: {
        ':skyTrackType': skyTrackType
      }
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...