如何在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