0
一个成员是一个或多个组的一部分。一个组可以有一个或多个成员。在mongodb中合并查询
给定一个成员和他所在的小组,我怎样才能获得每个小组的其他成员?
var MemberSchema = new Schema(
{
name: {
first: { type: String },
last: { type: String },
},
groups: [ { type: String } ],
otherMembersInGroups: [ {
id: { type: Schema.ObjectId, ref: 'Member' } ,
name: {
first: { type: String },
last: { type: String },
}
} ],
});
var query = MemberModel.findOne({ _id: objId });
query.exec(function(err, member)
{
// TODO: get all the members in all the groups that this member is in
var otherMembersInGroups = magicHere();
member.otherMembersInGroups = otherMembersInGroup;
return res.send(200, member);
}
我的出发点是
var query = MemberModel.find({ groups: "groupNamesHere" })
,但我真的不知道如何将其与上述相结合。
另外:如何正确地将此字段添加到猫鼬模型?我试过了,但是有很多重复(见上)。但似乎没有将它添加到模型中,它实际上并没有添加到成员对象中?
看来“魔法”不见了。但是你的模型是什么样的? “组”是一个数组吗?你想要做什么?在你有一个“成员”后,你是否想要匹配所有其他记录也具有相同的组,如在一些或任何? –
谢谢,我已经将模型的代码添加到了上面。是的,组是一个数组。在我有一个“成员”之后,我想为该成员添加一个字段,该成员包含该成员所在组中的所有其他成员。示例:您位于组x中。以下是所有其他成员谁也在组x。 – Ben
作为查询结果,我假定这意味着,而不是实际上更新整个文档。那是对的吗? –