仅填充少数字段
如果你只想在最终填充的 doc 中的 address
字段中使用 houseNum
和 street
字段,请在上述两种方法中使用 populate()
函数,如下所示:
Person.findOne({_id: req.params.id})
.populate('address', 'houseNum street')
.exec(function(err, person) {
// do something.
// variable `person` contains the final populated data
});
要么
Person.findOne({_id: req.params.id}, function(err, person) {
// do something
// variable `person` contains the final populated data
})
.populate('address', 'houseNum street');
这将生成以下最终填充的文档,
填充文件
{
"_id":"123abc",
"fname":"John",
"mname":"Kennedy",
"lname":"Doe",
"address":{
"_id":"456def",
"houseNum":"2",
"street":"Street 2"
}
}