Mongoose查询用户图
我有一个像这样的用户Mongoose查询用户图,mongoose,Mongoose,我有一个像这样的用户 name : { type : String }, organizations : [{ type : mongoose.Schema.ObjectId, ref : 'Organization' }] 以及一个类似于: name : { type : String }, members : [ user : { type : mongoose.Schema.ObjectId, ref : 'User' }, role : {
name : {
type : String
},
organizations : [{
type : mongoose.Schema.ObjectId,
ref : 'Organization'
}]
以及一个类似于:
name : {
type : String
},
members : [
user : {
type : mongoose.Schema.ObjectId,
ref : 'User'
},
role : {
type : String
}
]
如果我想获得一个用户能接触到的每个用户,比如他所在组织的成员列表中的所有用户,我该如何进行查询(填充用户会很好)
要获得我想到的所有组织:
Organization.find({'\u id':{$in:user.organizations}).exec(函数(err,organizations){})代码>
我希望避免多次查询,任何帮助都将不胜感激 我对用户所在的所有组织进行了查询,填充了所有帐户字段,并将它们合并到一个数组中,作为响应发送:
Organization.find({ '_id' : { $in: userOrganizations } }).populate('owner').populate('members.user').exec(function (err, organizations) {
var accounts = [];
organizations.forEach(function (organization) {
organization.members.forEach(function (member) {
accounts.push(member.user);
});
accounts.push(organization.owner);
});
res.send(accounts);
});
会很有帮助的