写关注需要回调 - Mongoose + Node.js

时间:2015-12-06 21:22:47

标签: javascript node.js mongodb

我遇到了以下问题。我正在创建项目管理应用程序,当我删除里程碑时,我想从ReportEntry文档中取消其ID,并将里程碑的标题添加到ReportEntry的另一个属性。我有以下代码:

MilestoneSchema.pre('remove', function(next) {
    this.model('ReportEntry').update(
        {milestone: this._id},
        {$unset: {milestone: ""}},
        {$set: {removedMilestone: this.title}},
        {multi: true},
        next
    );
});

这不起作用,它会在node.js控制台中抛出一个错误:writeConcern需要在updateWithWriteCommands(path)进行回调。怎么了?谢谢:))

1 个答案:

答案 0 :(得分:1)

Mongoose的Model#update方法只接受4个参数,回调是最后一个。你已经过了5。

试试这个:

this.model('ReportEntry').update(
    {milestone: this._id},
    {
        $unset: {milestone: ""},
        $set: {removedMilestone: this.title},
    },
    {multi: true},
    next
);