我有一个这样的文件
{
users: [
{
name: 'John',
id: 1
},
{
name: 'Mark',
id: 2
},
{
name: 'Mike',
id: 3
},
{
name: 'Anna',
id: 4
}
]
}
,我想从ID为2和4的数组中删除用户。为此,我执行以下代码:
const documents = [
{
id: 2
},
{
id: 4
},
]
Model.updateOne({ document_id: 1 }, { $pull: { users: { $in: documents } } });
但是不会删除任何用户。
您能告诉我我做错了什么以及如何获得所需的结果吗?
答案 0 :(得分:2)
如果您可以重新定义documents
数组的结构,这将起作用:
const documents = [2, 4]
Model.updateOne({ document_id: 1 }, { $pull: { users: { id: { $in: documents } } } })