javascript - 如何使用 findOne 方法查询 mongoose 以查找一件事或另一件事
问题描述
我正在尝试使用猫鼬创建一个登录系统来存储数据。简单地说...如果用户模型同时具有电子邮件和用户名字段,并且我想查询数据库以查找注册的新用户是否与现有用户没有相同的电子邮件或用户名?基本上是这样的
const user = await User.findOne({ email: req.body.email || username: req.body.username })
if(user){
return "user already exists"
}
所以基本上我在问我如何才能找到数据库中是否已经存在电子邮件或用户名已经存在于数据库中?感谢您的帮助 :}
解决方案
您可以使用$or
运算符,尝试:
const user = await User.findOne({ $or: [{ email: req.body.email }, { username: req.body.username }] })
if(user){
return "user already exists"
}
供您参考。希望能帮助到你。
推荐阅读
- typescript - Typescript:如何在深度未知的嵌套结构末尾定义类型?
- javascript - 如何在 React 组件中将默认文件从索引更改为自定义文件?
- python - 如何从扩展对象(Python 密码学)中获取属性值?
- java - java.io.FileNotFoundException: /sys/kernel/hungtask/vm_heart (权限被拒绝)
- javascript - Visual Studio 2019 如何找到我的 JavaScript/TypeScript 模块?
- python - 调用类外的方法导致窗口卡住
- c# - 如何通过 Angular(离子 4)调用用 C# 编写的 API
- google-app-engine - Jinja 可变阵列动力学
- c# - 如何强制 C# windows 服务以管理员权限自动执行?
- flutter - 如何在 Flutter / Dart 中合并 2 个 Firestore 查询流?