2015-10-16 89 views
3

我按照指示在猫鼬here猫鼬预更新不点火

PostSchema.pre('update', function() { 
    console.log('pre update'); 
    console.log(this); 
}); 

它在不触发这个中间件。我在这里错过了什么吗?

我已经加了next所以看起来和我的预存完全一样,但是那还是什么都不做。

回答

0

请确保在调用mongoose.model()之后没有定义此项。请注意0​​/upserts或更新不会触发此挂钩。为什么不执行的另一个原因是验证失败。因此,你需要设置一个pre('validate') hoke

+1

你说得对,它是'findOneAndUpdate',虽然有点混乱。 – gmaniac