Чтобы обновить атрибут без замены всего элемента, следует использовать операцию UpdateItem
DynamoDB .
В вашем примере, если вы хотите заменить массив metadata
, ваш шаблон отображения запросов должен выглядеть следующим образом:
{
"version" : "2017-02-28",
"operation" : "UpdateItem",
"key" : {
"id" : { "S" : "${context.arguments.id}" }
},
"update" : {
"expression" : "SET metadata = :vals",
"expressionValues": {
":vals" : $util.dynamodb.toDynamoDBJson($ctx.args.metadata)
}
}
}
Примечание: $util.dynamodb.toDynamoDBJson
преобразует ваш массив в типизированное значение DynamoDB. Для получения дополнительной информации и утилит см. Справочник утилит AWS AppSync .