我有一个 dynamoDB 表,它有一个包含 UserId 和列表列表的项目。它看起来像这样:
Item:
{
UserId: 'abc123',
Lists: [
{
id: 1,
title: 'My favorite movies',
topMovies: [
{
id: 1,
title: 'Caddyshack'
},
{
id: 2,
title: 'Star Wars'
}
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
现在,让用户创建一个名为“我最喜欢的电视节目”的新列表,并希望将其插入到 id 为 2 的 Lists 数组中。
我将如何使用文档客户端更新此对象。我查看了几个示例,但没有发现任何可以解释我正在尝试做的事情。这让我觉得我可能没有正确使用 DynamoDB,我应该有一个不同的对象架构。
我尝试使用它,但它覆盖了我以前的对象。
exports.handler = (event, context, callback) => {
console.log(event);
const params = {
TableName: "top-ten",
Key: {
"UserId": 'abc123',
},
UpdateExpression: "set Lists =:newItem",
ExpressionAttributeValues: {
":newItem": {
"id": 2,
"title": "Favorite TV Shows", …
Run Code Online (Sandbox Code Playgroud)