如何使用查找$或查询返回用于查找文档的任何字段?

时间:2019-04-27 11:45:17

标签: node.js mongodb mongoose

是否有一种简单/干净的方法来返回成功找到文档后使用的字段?

例如在注册过程中,我正在检查是否已使用电子邮件或用户名,并想通知用户要纠正的表单字段

User.findOne( { $or :[ {'email': email} , {'username': username}] } ... callback =>

1 个答案:

答案 0 :(得分:0)

您可以检查电子邮件,然后检查用户名,如下:

const username;
const email = await User.findOne( {'email': email} )
if(!email) {
   username = await User.findOne( {'username': username} )
   if(!username) 
       ok
   return 'username taken'
}
return 'email taken'