У меня есть, например.
schema.pre('save', (next) => {
console.log('save fired');
next();
});
Я предполагал, что "save" сработает на всех schema.update()
и schema.create()
событиях, так как оба технически "спасают" вещи.
Например,действиям, которые изменяют значение, равное unique: true
в схеме, необходимо проверить, не выдает ли новое значение ошибку DuplicateKey
(11000), и выдать свою собственную ошибку.
Есть ли очистительСпособ, чем:
const createUpdateCommon = (next) => {/*check if thrown DuplicateKey error*/}
schema.pre('save', createUpdateCommon);
schema.pre('findOneAndUpdate', createUpdateCommon);
Также нет никакого предварительного хука, который обрабатывает «любое обновление», вместо того, чтобы указывать findOne, findMany и т. д .?