Агрегация MongoDB: как раскрутить неизвестное количество вложенных массивов? - PullRequest
0 голосов
/ 06 февраля 2020

У меня есть коллекция, которая выглядит примерно так:

{
   "name": "item1",
   "values": [<some array>],
   "subitems": [
      {
         "name": "item2",
         "values": [<some array>],
         "subitems": [
            {
               "name": "item3",
               "values": [<some array>],
               "subitems": [
                  {
                     "name": "item4",
                     "values": [<some array>],
                     "subitems": [
                        {
                           "name": "item5",
                           "values": [<some array>],
                           "subitems": [
                                <...and so on...>
                           ]
                        }
                     ]
                  }
               ]
            }
         ]
      }
   ]
}

Так что в основном "глубина" subitems не определена, и каждый массив subitems может содержать любое количество элементов.

Если мы раскручиваем subitems, mon go раскручивает только элементы subitems на уровне item1, что имеет смысл. Однако мне нужно, чтобы это было go глубже в иерархии рекурсивным способом.

Как мы можем раскрутить все вложенные subitems?

...