Я пытаюсь обновить существующую запись в таблице Dynamodb. Как показано ниже, у меня в таблице есть элемент
let params = {
TableName: proces.env.dynamoDbTable,
Item: {
productId: "id",
att1: val1,
att2: val2
}
}
Я хочу выполнить обновление. Я использую метод обновления sdk aws Dynamodb и передаю ему параметры, как показано ниже
let aws = require('aws-sdk');
let dbb = new aws.DynamoDb.DocumentClient();
let params = {
TableName: process.env.tableName,
Key: {productID}
ExpressionAttributeNames: { "#updatedAt" : "updatedAt" }
ExpressionAttributeValues: {":u":moment().unix(), ":val1" : a, ":val2": b}
UpdateExpression: "SET att1 = :val1, att2: val2, #updatedAt: :u"
}
// a, b are passed as argument to function and are optional
dbb.update(params).promise()
Когда аргумент отсутствует, динамо вызывает исключение ExpressionAttributeValue, и я знаю, что это прямо. Есть ли способ обновить свой элемент с помощью предоставленных атрибутов