gpt4 book ai didi

python - dynamodb/python updateitem 在嵌套映射中追加项目

转载 作者:行者123 更新时间:2023-12-02 20:19:05 25 4
gpt4 key购买 nike

如何将项目附加到 dynamodb 中的现有 map 我想添加一组新的位置/名称/标签。

dynamodb 中的结构如下所示

{  
"user": "xyz",
"itemdetails": [
{
"location": "67666",
"name": "item1",
"tags": [
"k7866"
]
},
{
"location": "45444",
"name": "item12",
"tags": [
"ha23",
"ju4532"
]
}
}

我尝试了以下方法,但得到了

"Invalid UpdateExpression: Incorrect operand type for operator or function; operator: ADD, operand type: MAP"

response = table.update_item(
Key={
'user': "xyz",
},
UpdateExpression = 'ADD #itemdetails :newItems',
ExpressionAttributeNames = {
'#itemdetails' : 'ids'
},
ExpressionAttributeValues = {
':newItems' : {"name":name,
"location":location,
"tags":tags
}
},
ReturnValues="UPDATED_NEW"

最佳答案

我现在解决了

 UpdateExpression = 'SET itemdetails = list_append(itemdetails, :newitem)',
ExpressionAttributeValues={
":newitem": [
{
"name":"TEST",
"location":"TEST",
"tags":tags
}
]
},
ReturnValues="UPDATED_NEW"
)

关于python - dynamodb/python updateitem 在嵌套映射中追加项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51816315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com