Når du udfører await Order.find({}).populate({
, Mongoose sender først find
til mongod-serveren og returnerer en markør, som sendes videre for at udfylde.
Populate henter derefter hvert dokument fra markøren og sender et separat find
til user
samling for at hente de(t) matchende dokument(er) og gentage denne markør, og placere de hentede dokumenter i en matrix i det originale dokument.
Udfyldning kan påvirke, hvilke dokumenter der er indlejret i de originale dokumenter, men den har ingen mulighed for at fjerne dokumenter fra det originale resultatsæt.
match
videregivet til at udfylde vil betyde, at kun matchende brugere bliver tilføjet til det originale dokument, så du burde være i stand til at bruge filter
for at fjerne eventuelle dokumenter i resultatet, der ikke indeholder nogen brugere.