我不知道我需要怎麼做我想要做什麼。我的模式是這樣的:搜索值的數組對貓鼬
var userObj = mongoose.Schema({
'timestamp':{type: Date, default: Date.now()},
'password':{type:String, required:true},
"userName":{type:String, required:true, unique:true}
});
var groupSchema = mongoose.Schema({
'creator':String,
'members':Array, //contains the _id of users added to the group
'admins':Array,
'name':String,
'timestamp':{type: Date, default: Date.now()},
'description':String
});
其中成員架構有一個包含用戶ID的數組。我需要從組文檔中獲取數組並獲取用戶名。
我開始了使用貓鼬.find()方法和推動的結果到一個數組環 - 但正如我所期望的陣列是回調函數的範圍的空外。
var dat = [];
for(var i = 0; i<passed.payload.length;i++){
user.find({'_id':passed.payload[i]},'userName',function(err,result){
if(err){
console.log(err);
}else{
dat.push(result);
}
})
}
//res.send(dat)
console.log(dat);
我不知道如何做到這一點 - 我考慮過使用.find拉所有用戶ID,然後運行該陣列即可返回只匹配。這似乎是浪費資源拉全用戶表,然後測試它。
是否有一個更復雜的查詢,我可以用貓鼬使用_ids數組來匹配這樣的數據?
是的,它做到了。我幾乎覺得很蠢,除了我在學習,所以學習很好,我看了看,但誤解了它的用法。謝謝! – grishrl