javascript - 用mongoose Model.create(doc,cb)无效
大家讲道理
大家讲道理 2017-04-10 17:34:28
0
2
229

如题,跟踪进不了回调,在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 Promise(function (fulfill, reject) { ...省略doc的校验 doc为上个promise传入的查询结果 myModel.create({ employee_name: newData.emp_name, employee_no: newData.emp_no, month: newData.month, overtime_date: newData.addDates.rmArr(newData.rmDates) }, function (err, res) { if (err) return reject(err); return fulfill(res); }); }); createPromise .then(function(res){...}) .catch(...)

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

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

reply all (2)
左手右手慢动作
mySchema .pre("save", function (next) { this.lastModifyDate = Date.now(); console.log("save one:", this); next(); });
    Peter_Zhu

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

      Latest Downloads
      More>
      Web Effects
      Website Source Code
      Website Materials
      Front End Template
      About us Disclaimer Sitemap
      php.cn:Public welfare online PHP training,Help PHP learners grow quickly!