(lehu6.vip官网直营平台) 用mongoose Model.create(doc,cb)无效

如题,跟踪进不了回调,在sechma的pre save hook能跟踪到确实执行到了pre save,但是没有保存到数据库。新添加了post save hook 但log中没有输出,说明save没执行完成。

  1. sechma

var mySchema = new mongoose.Schema{ employee_name: { type: String }, employee_no: { type: String }, month: { type: Number }, date: [String], lastModifyDate: Date
};
mySchema .pre"save", function next { this.lastModifyDate = Date.now; console.log"save one:", this;
};
  1. 业务层

var createPromise = function doc,newData { return new Promisefunction fulfill, reject { ...省略doc的校验 doc为上个promise传入的查询结果 myModel.create{ employee_name: newData.emp_name, employee_no: newData.emp_no, month: newData.month, overtime_date: newData.addDates.rmArrnewData.rmDates }, function err, res { if err return rejecterr; return fulfillres; };
};
createPromise
.thenfunctionres{...}
.catch...

现在跟踪进入到create后没有执行then或者catch中的console.log

mySchema .pre"save", function next { this.lastModifyDate = Date.now; console.log"save one:", this; next;
};

确实在pre hook这里忘记执行next;导致保存中断。
在补上next后问题解决。

发表评论

电子邮件地址不会被公开。 必填项已用*标注