我正在尝试使用mongoose开发一个简单的应用程序。 给定一个用户名'group.contacts'的数组,我想获得这些用户的相应ID。但是,循环不能按预期工作:循环在.find()方法完成之前继续,因此我无法获取所有人的ID。我该如何解决这个问题?
for(var v = 0; v < group.contacts.length; v++) {
PersonModel.find({
name: group.contacts[v]
}, function (err, person) {
if(!err && person) {
console.log('Found ' + person._id + ' ' + v);
}
});
}
答案 0 :(得分:2)
试试这个:
PersoModel
.where('name').in(group.contacts)
.exec(function(person){
console.log('Found ' + person._id + ' ' + person.name);
});