我正试图删除猫鼬中的对象。
{
"_id" : ObjectId("5b62c772efedb6bd3f0c983a"),
"projectID" : ObjectId("0000000050e62416d0d75837"),
"__v" : 0,
"clientID" : ObjectId("00000000996b902b7c3f5efa"),
"inspection_data" : [
{
"pdf" : null,
"published" : "N",
"submissionTime" : ISODate("2018-08-02T08:57:08.532Z"),
"userID" : ObjectId("00000000cac68e3bc04643f7"),
"insSummary" : "inspected areas",
"insName" : "Infotech",
"_id" : ObjectId("5b62c772fa02622a18655e7b"),
"published_date" : ISODate("2018-08-02T08:57:22.041Z"),
"locationAspects" : [
{
"aspectname" : "Ground floor",
"_id" : ObjectId("5b62c772fa02622a18655e80"),
"comments" : [
{
"_id" : ObjectId("5b62c772fa02622a18655e81"),
"images" : [
{
"path" : "/uploads/inspection/00000000996b902b7c3f5efa/images/1533200242005-IpjLKH4XFWNEcHXa.png",
"img_name" : "1533200242005-IpjLKH4XFWNEcHXa.png",
"title" : "Fan",
"id" : "1",
"_id" :ObjectId("5b7bd0890394a62354a672cd")"
},
{
"path" : "/uploads/inspection/00000000996b902b7c3f5efa/images/1533200242008-YN8IlA5yrMn3cBnn.png",
"img_name" : "1533200242008-YN8IlA5yrMn3cBnn.png",
"title" : "Box",
"id" : "2",
"_id" :ObjectId("5b7bd0890394a62354a672ce")"
}
],
"comment" : [
"comment4"
],
"recommendation" : ""
}
]
}]
}
现在我要从总对象中删除它。
我尝试了以下代码:
已更新:
检查此猫鼬查询:
mongo.inspection.update({"projectID" : mongoose.Types.ObjectId(req.body.projId) },
{ $unset:
{ 'inspection_data.$[e1].locationAspects.$[e2].comments.$[e3].images': { _id : mongoose.Types.ObjectId(req.body.imgid) } } },
{ "arrayFilters": [
{ "e1._id": mongoose.Types.ObjectId(req.body.InspId)},
{ "e2._id": mongoose.Types.ObjectId(req.body.aspectId)},
{ "e3._id": mongoose.Types.ObjectId(req.body.commentId)},
// { "e4.id": imgid }
]},
function(err,response){
if(err){
console.log(err)
}
else{
console.log("ok")
}
})
在控制台上一切正常,但是我的图像对象没有被移除,我也尝试了$ pull。如何删除Array中的对象。