losaped
@losaped
Пьяный самурай

Как осуществить поиск вглубь структуры?

имеется структура articles в нее встроены comments, нужно найти определенный комент и вставить в его дочерние другой комент:

{  
   _id:"Some ID",
   text:"Some Article",
   comments:[  
      {  
         "_id":"some comment id1",
         "text":"some comment",
         "parent":"Some ID",
         "comments":[  
            {  
               "_id":"some comment id2",
               "text":"some comment",
               "parent":"some comment id1",
               "comments":[  
                  {  
                     ...
                  }
               ]
            }
         ]
      },
      {  
         "_id":"some comment id3",
         "text":"some comment",
         "parent":"Some ID",
         "comments":[  
            {  
               ...
            }
         ]
      }


вложенность коментов может быть любая, мне нужно добавить комент к другому коменту по его id, я не знаю на каком уровне находится родительский комент, как это сделать с помощью запроса в монго? или же проще и правильнее вытащить всю структуру коментов в объект, пройтись по этому дереву, добавить новый элемент дерева и в монгу заапдейтить все дерево?
  • Вопрос задан
  • 186 просмотров
Пригласить эксперта
Ответы на вопрос 1
@lega
Если вам нужно обращаться к коментам напрямую (по ид), то стоит их вынести в отдельную коллекцию, либо на один "линейный" уровень, что-бы была возможность это сделать. А с вашей структурой только целиком записывать весь блок, либо строить точечный запрос по этой структуре.

PS: Зачем вам parent в комменте если он итак находится в каком-то коменте (уже имеет принадлежность)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы