我正在尝试创建一个更新,如果该字符串集存在,则将电子邮件添加到该字符串集中,或者如果该电子邮件集不存在,则使用该电子邮件创建一个字符串集。
我从以下答案中提取了一些代码:Append to or create StringSet if it doesn't exist,但我似乎无法使其正常工作。
我最终遇到错误"errorMessage": "An error occurred (ValidationException) when calling the UpdateItem operation: Invalid UpdateExpression: Incorrect operand type for operator or function; operator: ADD, operand type: MAP"
}
response = table.update_item(
Key={'email':email},
UpdateExpression='ADD emails :i',
ExpressionAttributeValues={
':i': {SS': [email]},
},
ReturnValues="UPDATED_NEW"
)
如何创建一个更新表达式以创建一个不存在的字符串集,或者如果存在则添加一个项目?
答案 0 :(得分:1)
本周我遇到了同样的问题,后来我找到了一个解决方案。看下面的例子:
response = table.update_item(
Key={'email': email },
UpdateExpression="ADD emails :i",
ExpressionAttributeValues={":i": set([email])},
ReturnValues="UPDATED_NEW"
)
这对我来说可以创建字符串集或附加到现有的字符串集。