Jak vyplývá z dokumentů, které citujete, nemůžete použít $lookup
na střepové sbírce. Nejlepším řešením je tedy provést vyhledávání sami v samostatném dotazu.
- Proveďte
aggregate
dotaz. - Vytáhněte hodnoty "localField" z výsledků dotazu do pole, případně pomocí
Array#map
. - Proveďte
find
dotaz na kolekci „from“ pomocí dotazu jako{foreignField: {$in: localFieldArray}}
- Slučte své výsledky do libovolného formátu, který potřebujete.
Nenechte $lookup
omezení vám zabrání ve sdílení kolekcí, které to vyžadují pro škálovatelnost, stačí provést vyhledávací funkci sami.