"$pull" 不会删除 mongoose 数组的嵌入文档
Posted
技术标签:
【中文标题】"$pull" 不会删除 mongoose 数组的嵌入文档【英文标题】:"$pull" doesn't delete the embedded documents of mongoose array 【发布时间】:2022-01-08 01:24:32 【问题描述】:我的 mongo 架构如下:
resourceId:
type: String,
,
resourceName:
type: String,
,
dateAndValue: [
date: type: Date ,
value: type: Number ,
,
],
将数据添加到“dateAndValue”数组后,我想删除数组中包含“0”作为值的所有对象。这是我使用的代码,但它似乎不起作用:
await QuantumResourcesManpowerAdmin.updateMany(
resourceId: qrmaRecord.resourceId ,
$pull:
dateAndValue:
$elemMatch: value: 0 ,
,
,
,
multi: true
);
【问题讨论】:
【参考方案1】:找到了答案,$elemMatch 应该从上面的代码中删除。所以,
await QuantumResourcesManpowerAdmin.update(
resourceId: qrmaRecord.resourceId ,
$pull:
dateAndValue:
value: 0,
,
,
,
safe: true, multi: true
);
可以正常工作
【讨论】:
以上是关于"$pull" 不会删除 mongoose 数组的嵌入文档的主要内容,如果未能解决你的问题,请参考以下文章
git 添加和删除 global 的 remote.origin.url
Java企业微信开发_Exception_01_"errcode":60011,"errmsg":"no privilege to access/mo