Actualización: Consulte la respuesta de Trinh Hoang Nhu para obtener una versión más compacta que se agregó en Mongoose 4. Se resume a continuación:
Car
.find()
.populate({
path: 'partIds',
model: 'Part',
populate: {
path: 'otherIds',
model: 'Other'
}
})
Mangosta 3 e inferior:
Car
.find()
.populate('partIds')
.exec(function(err, docs) {
if(err) return callback(err);
Car.populate(docs, {
path: 'partIds.otherIds',
model: 'Other'
},
function(err, cars) {
if(err) return callback(err);
console.log(cars); // This object should now be populated accordingly.
});
});
Para poblaciones anidadas como esta, debe decirle a mongoose el esquema desde el que desea poblar.