[英]PHP DynamoDB- Add/Update an value in the list
我正在尝试将更多 email 地址添加到列表中。 Dynamo DB 中的架构和示例
ID: STRING
DEP: MAP
Contacts: MAP
EMAIL: LIST
Version: Number
{
“ID”: "1234567888",
"Dep": {
"Contacts": {
"Email": [
"test@test.com”
]
}
},
"Version": 34
}
我试过了,但它只是更新了值,但没有添加新值。 (如果值不存在,如果您也可以帮助我,那么仅添加会很好但不是强制性的)
$eav = $marshaler->marshalItem([":email" => [$email]]);
$params = ['TableName' => "xxx", 'ID' => $key,
'UpdateExpression' => 'SET Dep.Contacts.Email = :email',
'ExpressionAttributeValues' => $eav, 'ReturnValues' => 'UPDATED_NEW'];
$result = $dynamodb->updateItem($params);
您应该list_append
将元素添加到列表中。 下面的 CLI 示例:
--update-expression "SET #ri = list_append(#ri, :vals)"
您可以在此处的文档中看到这一点:
问题未解决?试试以下方法:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.