搜索

首页  >  问答  >  正文

node.js - 如何在mongoose中删除数组元素

现在有两个schema一个是学生,一个是学生的就业信息

var Student = new mongoose.Schema({
    jobs:[{
        type:ObjectId,
        ref: 'job'
    }]
});

var job = new mongoose.Schema({
    student:{
        type: ObjectId,
        ref: 'student'
    }
})

删除一条job文档的时候如何把学生文档的jobs数组中该job的ObjectId也删了,
我用了如下的写法:
Job.remove({_id:_id}, function(err,job){
    var jobId = job._id;
    Student.update({_id:StudentId},{
    $pull:{jobs:{ObjectId: jobId}}
    }, function(){})
})

这样会报错,请问正确写法是什么

PHPzPHPz2770 天前1319

全部回复(1)我来回复

  • 阿神

    阿神2017-05-24 11:37:44

    画蛇添足的感觉,这里都是引用而已,在 populate 的时候才会填充真实的数据库中的数据,被删掉的数据还怎么可能被引用得到?

    回复
    0
  • 取消回复