如何在Mongoose中使用查询生成器执行'OR'运算符?OR运算符与查询生成器在mongoose.js
我试过这样的:按ID或用户名 找到一个用户,但它没有奏效。
User.findOne({})
.where('_id', 'username').equals(param)
如何在Mongoose中使用查询生成器执行'OR'运算符?OR运算符与查询生成器在mongoose.js
我试过这样的:按ID或用户名 找到一个用户,但它没有奏效。
User.findOne({})
.where('_id', 'username').equals(param)
我的解决方案
// Needed to user ObjectID comparison
const { ObjectID } = require('mongodb');
// Check if param is a valid ID otherwise is Username
let id_or_username = ObjectID.isValid(id) ? '_id' : 'username';
// Find post by ID or Username
Home
.findOne({})
.where(id_or_shortid).equals(id)
.exec(callback)
哪里是或者是什么?你可以编写你想实现的伪代码吗?你使用哪个版本的Mongoose? – boroboris
那么,@boroboris,这是我的问题...如何做猫鼬或OR,我正在使用最新版本的猫鼬 – Matt
我想问你想要使用的具体或条件。 – boroboris