有没有一种方法可以使用pynamodb
完成下面的代码片段?
dynamoDB.updateItem({
TableName: "Users",
Key: { "UserId": { S: "c6af9ac6-7b61" } },
ExpressionAttributeValues: { ":inc": {N: "1"} },
UpdateExpression: "ADD loginCount :inc"
})
根据这里的测试和这里的文档,我可以看到它是受支持的,但当我尝试对数字字段执行add
操作时,它会抛出AttributeError: 'int' object has no attribute 'add'
异常,如下所示。
test_table.balance.add(int(dep_amount))
add
操作是一个更新操作,因此它应该包含在传递给test_user.update
的操作列表中,如下所示:
test_user.update(actions=[User.balance.add(int(dep_amount))])
pynamodb文档包括一个关于更新项目的部分。