我希望只有在Firm集合中存在所提供的电子邮件域时,才能将RegUser(注册用户)保存到MongoDB RegUsers集合中。我有一个预保存挂钩,它可以验证电子邮件域,但我不知道如果电子邮件域不存在,该调用什么命令/函数来取消保存。有更好的方法来实现这一点吗?或者我应该调用什么命令?
注册用户.ts:
regUserSchema.pre('save', async function(done) {
const domain = this.email.split('@')[1];
const exists = await Firm.findOne({ domain });
if (exists) {
done();
} else {
// WHAT TO DO HERE??
}
});
1条答案
按热度按时间aij0ehis1#
为了阻止钩子的继续,并且实际的更新
mongoose
会让您抛出错误,您可能需要根据代码的编写方式在代码中添加错误处理。