Всем привет.
Есть несколько коллекций
Пользователи
Члены команд (где есть ссылка на пользователя)
Сообщения команд (где есть ссылка на члена команды)
как правильно собрать pipeline чтобы собрать связанные данные по пользователю
Пользователь
- члены команд
- сообщения команд
db['users'].aggregate([
{"$match":{"chat_id":user.chat_id}},
{"$lookup":{
"localField" : "_id",
"from" : "team_members",
"foreignField" : "user_id",
"as":"member"
}}])
логика подсказывает что вместо "team_members" надо использовать вложенный pipeline
возможно я загоняюсь и ничего криминального в поэтапном формировании нет (сначала выбрать членов команды, а затем присоединить все что нужно именно к этой коллекции)