objects - Determine si doc es nuevo o existe en ''guardar'' del middleware Post de mongoose
nested schema mongoose (3)
Editar: ver Document#isNew para obtener información sobre el documento # isNew
De la documentación de Mongoose JS :
schema.post(''save'', function (doc) {
console.log(''%s has been saved'', doc._id);
})
¿Hay alguna forma de determinar si se trata del guardado original o el guardado de un documento existente (una actualización)?
schema.pre(''save'', function (next) {
this.wasNew = this.isNew;
next();
});
schema.post(''save'', function () {
if (this.wasNew) {
// ...
}
});
isNew
es una clave utilizada por mongoose internamente. Guardar ese valor en el documento wasNew
en el wasNew
de wasNew
previo permite al wasNew
de guardado posterior saber si se trata de un documento existente o de uno recién creado. Además, wasNew
no se compromete con el documento a menos que lo agregue específicamente al esquema.
schema.post(''save'')
Ya no reconoce eventos de actualización. Así que también podría hacer lo siguiente:
schema.post(''save'', function () {
console.log(''New object has been created.'');
});