我的用户模型包括:
{_id: "GenericMongoId",
friends: [{type: Schema.ObjectId, ref:'User'}]
}
我正在创建一个函数,在删除用户之后,所有用户朋友数组中对该用户的所有引用也会被删除。
User.findById(req.params.id, function (err, user) {
user.remove(function(err) {
User.update(({friends: req.params.id}),{$pull: {friends:req.params.id}}, function(err, data){
console.log(err, data)...
当我运行该函数并传入id时,由于某种原因,它似乎只删除了一个朋友引用。我想我错过了什么,但我的谷歌搜索并没有找到它。
答案 0 :(得分:1)
Duh,只需添加多选项
即可User.update({friends: req.params.id},
{$pull: {friends:req.params.id}},{multi:true}...
答案 1 :(得分:0)
根据Mongoose文档,findById通过它的id搜索单个文档。
按ID查找单个文档。
http://mongoosejs.com/docs/api.html#model_Model.findById
您可以使用Model.update获得所需的结果。