让我们考虑这个架构:
var elementSchema = new Schema({
name: String,
last_edit: { type: Date, default: Date.now }
});
现在,每次我更新任何元素。name
我希望mongoose直接更新last_edit
时间。
var schema = new Schema(..);
schema.pre('save', function (next) {
// do stuff
next();
});
我可能会更新它而不是// do stuff
,但是不会传递要保存的文档,
任何提示?
答案 0 :(得分:3)
在'save'
中间件中,this
是对正在保存的文档的引用:
schema.pre('save', function (next) {
this.last_edit = Date.now();
next();
});