У меня есть схема «Пользователь» с полем «статус», я хочу отслеживать изменения в этом поле, поэтому, когда пользователь меняет поле статуса на «заблокировано», задание выполняется.
Какой способ сделать это с мангустом ?.
Я ожидаю прослушать изменение обновления в поле «статус», если статус обновлен до «заблокирован», я хотел бы вызвать сторонний API для блокировки пользователя из приложения
Я попробовал следующее
const usersSchema = new mongoose.Schema({
status: {type: String, default: 'active', required: true, enum: ['active', 'locked']},
}, {timestamps: {createdAt: 'createdDate', updatedAt: 'modifedDate'}});
usersSchema.pre('updateOne', function(next) {
console.log('pre save');
if (this.getUpdate().status) {
// Run job ie call an third pary api to block the user from the application
console.log('do a job');
}
next();
});