Amazon dynamodb DynamoDB if属性不存在';t在node.js中创建它

Amazon dynamodb DynamoDB if属性不存在';t在node.js中创建它,amazon-dynamodb,Amazon Dynamodb,我正在尝试更新可能不存在的用户对象属性 该属性称为声明,它本身将为每种货币类型#c1(美元、欧元等)拥有一个属性。一个用户可以有多种货币,但一开始就没有,因此用户对象上可能存在也可能不存在声称的 我的初稿是: let params = { TableName: 'myproject-user', Key: {"id":req.user.sub}, UpdateExpression: 'set claimed.#c1 = :o', ExpressionAttributeValues

我正在尝试更新可能不存在的用户对象属性

该属性称为
声明
,它本身将为每种货币类型
#c1
(美元、欧元等)拥有一个属性。一个用户可以有多种货币,但一开始就没有,因此用户对象上可能存在也可能不存在声称的

我的初稿是:

let params = {
  TableName: 'myproject-user',
  Key: {"id":req.user.sub},
  UpdateExpression: 'set claimed.#c1 = :o',
  ExpressionAttributeValues:{
    ":o": req.body.currency
  },
  ExpressionAttributeNames:{ "#c1": req.body.currency.type },
  ReturnValues:"UPDATED_NEW"
};
这将返回错误:

"Error: ValidationException: The document path provided in the update expression is invalid for update"

我尝试过使用
if\u not\u exists
的一些变体,但我似乎无法让它工作。如何修改参数以达到预期效果?

可以进行两次调用吗?一个用来检查地图是否存在,然后另一个用来更新?@HoratiuJeflea我想如果我没有其他选择,我会有更多关于这方面的信息