【发布时间】:2021-04-05 19:07:43
【问题描述】:
我不确定为什么使用后一种方法无法进行删除。 (foundList 不是null)
后一种方法:
List.findOne({name: listType}, function(err, foundList){
if (err){
console.log(err);
} else {
foundList.updateOne({}, { $pull: { item: { _id: itemID } } });
console.log('deletion success');
res.redirect("/" + listType);
}
});
}
架构:
const itemSchema = {text: String}
const listSchema = {
name: String,
item: [itemSchema]
}
【问题讨论】:
-
findOneAndUpdate和updateOne得到不同的结果是因为如果选项{ new: true}未作为第三个参数传递给 API,findOneAndUpdate将返回旧文档。