Запрос DynamoDB, возвращающий ноль каждый раз, даже когда объект существует - PullRequest
1 голос
/ 06 мая 2019

У меня есть запрос, который возвращает nil каждый раз, когда я его запускаю, несмотря на наличие элементов с ключом, который я передаю.

Я установил следующее выражение:

queryExpression.keyConditionExpression = "#uID = :uidValue"

// in my model class
var uID: String?

uidValue isзначение, которое я сравниваю с "uID".

Я прочитал документацию AWS по этому вопросу и не нашел ничего полезного.

//implementation of query
let dynamoDbObjectMapper = AWSDynamoDBObjectMapper.default()


dynamoDbObjectMapper.query(GameTracker.self, expression: queryExpression) { (output: AWSDynamoDBPaginatedOutput?, error: Error?) in
  if(output == nil){
    //create new user here, this keeps getting run each time
  }else{
    //user found, run other logic
  }
}

Я использую uID,Я знаю, что есть в моей таблице, но она каждый раз возвращает ноль и выдает ошибку.К сожалению, документы AWS по этому вопросу не дают много нового понимания того, что может пойти не так из того, что я нашел.

1 Ответ

0 голосов
/ 07 мая 2019

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

...