确认电子邮件是否已存在于 MongoDB 数据库中

我编写了这段代码来检查数据库中是否已经存在电子邮件:


async store (req,res) {

const email = req.body.email;


let user = await User.findOne ({ email: email });


if (user) {

    console.log('Already exist.')

};

(...)

}

但它不起作用:我可以将信息存储在用户集合中,但它的电子邮件未经过验证。


我正在使用猫鼬。


我做错了什么?


HUH函数
浏览 110回答 2
2回答

鸿蒙传说

您需要exec()在最后使用才能实际运行查询:let user = await User.findOne({ email: email }).exec();此外,由于您使用的是await,请确保包含函数已标记为async。我可以给你的信息有限,因为你只是说“它不起作用”。这并不能告诉我任何事情。你运行它并且没有任何反应吗?它会给你一个错误吗?这个网站上的人不喜欢听到这样的话:“它不起作用”。

凤凰求蛊

您尚未描述您的用例,但如果您希望避免电子邮件冲突,使用猫鼬,当您定义对象的架构时,您可以使用该unique: true选项。然后它将拒绝任何提交已存储电子邮件的新用户或更新用户。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript