在我的Python脚本中,我向DynamoDB表中插入记录(数据项),但我意识到AWS的响应并不包括实际插入的数据项:
{'ResponseMetadata': {'HTTPHeaders': {'connection': 'keep-alive',
'content-length': '2',
'content-type': 'application/x-amz-json-1.0',
'date': 'Fri, 27 Jan 2017 23:31:22 GMT',
'server': 'Server',
'x-amz-crc32': '234324243',
'x-amzn-requestid': 'xxxxxxxxxx'},
'HTTPStatusCode': 200,
'RequestId': 'xxxxxxxxxx',
'RetryAttempts': 0}}
很不幸,我有以下这样的逻辑:
if not user.exists():
user = create_user()
else:
user = get_user()
user.do_something()
我宁愿不进行另一次往返以获取刚插入的用户对象。当然,我可以模拟该对象,因为在Python中使用
boto3
时,user
对象只是类似字典的东西,但是使用单一表示方式非常方便。此外,put_item
调用似乎也这样做了。r = user_table.put_item(Item={'user_id': uid, 'info' : { ... }})
应该能够返回已放置的物品吗?还是其他端点可以?
感谢任何见解!