我有两个集合 - 称它们为main和sub。我的主要收藏如下所示,
{
"_id" : "xxxxx",
"subId" : "1234"
}
我的潜点看起来像,
{
"_id" : "1234",
"name" : "somename"
}
我写了一个像
这样的查询Main.find({_id : { $in : ids }},function(err, results){
//Do something here
});
现在,我希望我的最终结果为,
{
"_id" : "xxxx",
"subName" : "somename"
}
如何迭代文档并获得所需的结果。我对MEAN堆栈相当新。任何帮助,将不胜感激。提前致谢。
答案 0 :(得分:1)
你可以使用像这样的参考和populate模式:
var mainSchema = Schema({
_id: Number,
subId: Number,
name: [{ type: Schema.Types.ObjectId, ref: 'Sub' }]
});
var subSchema = Schema({
_id: Number,
name: String,
});
var Main = mongoose.model('Main', mainSchema);
var Sub = mongoose.model('Sub', subSchema);
现在,您可以使用Sub
collection:
Main.find({_id : { $in : ids }}).populate('name').exec(function(err, results){
//Do something here
});