0
사용자가 가입 한 그룹의 목록을 쿼리하려고합니다. 그룹 스키마에는 그룹에 대한 정보가 있습니다. 사용자 스키마에는 사용자가 가입 한 날짜와 함께 가입 한 그룹이 있습니다.몽구스에서 ObjectId의 배열을 쿼리
var UserSchema = new Schema({
email: String,
groups : [{
groupId : Schema.ObjectId,
joined: {type: Date, default: Date.now}
}],
events : [Schema.ObjectId]
});
var GroupSchema = new Schema({
title: String,
admin: [Schema.ObjectId],
about: String
})
//Assume that userId is valid (is a valid ObjectId)
User.findOne({_id : userId},function(err, user) {
if (err){
res.send(err);
}
// Grab events from group array and return result
Group.find({_id : {$in : user['groups']._id}}, function(err, groups){
res.json(groups);
});
});
하지만 결과
정의되지 않은 받기 내가이
[ { _id: 54bf1dc44fa35ec50f000006,
joined: Tue Jan 20 2015 22:32:20 GMT-0500 (EST),
title: 'Poop',
admin: none,
about: 'stinky'
},
{ _id: 54bf225a480f01b314000006,
joined: Tue Jan 20 2015 22:51:54 GMT-0500 (EST)
title: 'Poop2',
admin: none,
about: 'stinky2'
}
],
같은 목록을 얻으려고 그래서 기본적으로
{ _id: 54bf1ac6b4ff988e0b000003,
email: '[email protected]',
__v: 0,
groups:
[ { _id: 54bf1dc44fa35ec50f000006,
joined: Tue Jan 20 2015 22:32:20 GMT-0500 (EST) },
{ _id: 54bf225a480f01b314000006,
joined: Tue Jan 20 2015 22:51:54 GMT-0500 (EST) }
],
}
사용자 문서의 출력 결과의 예입니다