如何使用 boto3 在 DynamoDB 中獲取此字典列表?

牛仔

這是我想在 DynamoDB 中添加的項目示例:

第 1 項:

user :{'Id': '123456789', 'Name': 'user2', 'Keys': [{'KeyId': '987654321', 'keyStatus': 'Active'}]}

第 2 項:

user :{'Id': '59940303', 'Name': 'user2', 'Keys': [{'KeyId': '987654321', 'keyStatus': 'Active'},{'KeyId': '6382920434', 'keyStatus': 'Active'}]}

如您所見,Keys 部分包含一個字典列表。Item1包含一個字典,item2包含兩個字典。

如何在 DynamoDB 中添加它?

這有效(沒有字典列表):

table = dynamodb_resource.Table("name")
table.update_item(
    TableName=table_name,
    Key={"Id": user["Id"]},
    UpdateExpression="set Name=:n",
    ExpressionAttributeValues={
        ":n": user["Name"]
    },
    ReturnValues="UPDATED_NEW"

但是我應該如何更新這個字典列表?

jarmod

更新對我來說很好,如下所示:

table.update_item(
    Key={"id": user["Id"]},
    UpdateExpression="set #n=:n, #k=:k",
    ExpressionAttributeValues={":n": user["Name"], ":k": user["Keys"]},
    ExpressionAttributeNames={"#n": "Name", "#k": "Keys"},
    ReturnValues="UPDATED_NEW",
)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

dynamodb boto3中的update_item示例

如何使用boto3将项目有条件地插入到dynamodb表中

Dynamodb和Boto3,在扫描中链接多个条件

我们如何使用boto3查询dynamodb的二级索引?

使用Boto3使用哈希键和范围键查询DynamoDB

在Python中使用Boto3从dynamodb获取结果并将其解析为可用的变量或字典

DynamoDB-如何查询嵌套属性boto3

如何使用Boto3将项目添加到Dynamodb上的string_set

Boto3:在DynamoDB中使用“ NOT IN”进行扫描

使用boto3从DynamoDB表中获得最大的主键值

boto3 dynamodb IN状态

如何通过Python / Boto3添加DynamoDB全局二级索引

使用boto3将json批量上传到dynamodb

如何使用boto3从DynamoDB检索所有项目?

UpdateExpression使用boto3为DynamoDB表中的更新函数获取动态值

使用Boto3更新DynamoDb

如何使用serverless.yml创建dynamodb表并使用python boto3删除其中的项目?

如何使用boto3删除dynamodb中的所有项目

使用Boto3的DynamoDB分页

如何将扫描过滤器与 boto3 一起用于 dynamodb

无法使用 boto3 从 DynamoDB StringSet 中删除项目

如何在给定主键列表的情况下使用 boto3 对 DynamoDB 运行批处理查询

使用 boto3 在 dynamodb 中返回所有具有最大排序键的哈希键项

如何格式化 boto3 lambda 函数中的密钥以更新 dynamodb?

使用 boto3 錯誤屬性名稱是保留關鍵字,有條件地將項目插入到 dynamodb 表中

如何在 aws dynamodb boto3 上正確使用日期過濾器

如何使用 Boto3 for DynamoDB 修复“NoCredentialsError”

我不知道如何使用 Boto3 从我的 DynamoDB 表中查询某些数据

Boto3:使用多个排序键值查询 DynamoDB