gpt4 book ai didi

node.js - 删除 Mongodb 对象数组中的元素?

转载 作者:太空宇宙 更新时间:2023-11-04 03:21:58 25 4
gpt4 key购买 nike

我有以下文档:

{
_id: ObjectId,
name: 'String',
description: 'String',
articles: [
{ reference: ObjectId, title: 'String', digest: 'String', content: '...' },
{ reference: ObjectId, title: 'String', digest: 'String', content: '...' },
{ reference: ObjectId, title: 'String', digest: 'String', content: '...' },
{ reference: ObjectId, title: 'String', digest: 'String', content: '...' },
...
]
}

我只想从此文档中删除一篇带有 ObjectId aid 的特定文章。所以我使用 mongoose 的方法:

Model.update({
_id: 'the document ObjectId',
}, {
$pull: {
articles: {
$elemMatch: {
reference: aid,
},
},
},
});

结果是:

{n: 1, nModified: 1, ok: 1}

但是文档的变化和我预想的不一样:

{
_id: ObjectId,
name: 'String',
description: 'String',
articles: [],
}

我想知道为什么以及如何按照我的预期删除一篇特定文章。

最佳答案

试试这个

Model.update({
_id: 'the document ObjectId',
}, {
$pull: {
articles: { "reference" : aid}
}
});

关于node.js - 删除 Mongodb 对象数组中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49045730/

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