Я пытаюсь заставить свою функцию Lambda обновлять результаты в моей таблице DynamoDB, но я только хочу обновить мои существующие записи / элементы в моей таблице, а не создавать новые элементы.
В настоящее время у меня есть следующее:
def updateDynamo(asset, averageRating) :
updateItem = ChipRatingTable.update_item(
Key={
'AssetID': asset
},
UpdateExpression="SET AverageRating = :a",
ConditionExpression='attribute_exists(AssetID)',
ExpressionAttributeValues={
':a': Decimal(str(averageRating))
},
ReturnValues="UPDATED_NEW"
)
Я попытался провести небольшое исследование и отметил Условие выражения как способ сделать это, но каждый раз, когда я пытаюсь получить, я получаю ошибка:
«errorMessage»: «Произошла ошибка (ConditionalCheckFailedException) при вызове операции UpdateItem: сбой условного запроса», «errorType»: «ConditionalCheckFailedException»
Любая помощь будет принята с благодарностью! Спасибо!