Mongoose 4.5 stödjer detta
Project.find(query)
.populate({
path: 'pages',
populate: {
path: 'components',
model: 'Component'
}
})
.exec(function(err, docs) {});
Och du kan gå med i mer än en djup nivå.
Redigera 2021-03-17:Det här är bibliotekets implementering, vad det gör bakom scenen är att göra en ny fråga för att hämta en sak åt dig och sedan gå med i minnet. Även om detta fungerar men vi borde verkligen inte lita på. Det kommer att få din db-design att se ut som SQL-tabeller. Detta är kostsamt och kan inte skalas bra. Försök att designa ditt dokument så att det minskar sammanfogningen.