Как сделать вложенное заселение в mongodb? - PullRequest
0 голосов
/ 26 сентября 2018
router.get('/', (req, res) => {
Post.find()
    .populate("author")
    .populate("comments")
    .populate("commentedBy")
    .sort({date : -1})
    .exec()
    .then(posts => res.json(posts));
});

здесь я заполняю комментарии из модели комментариев, а затем заполняю 'commentmedBy' из модели комментариев.Последнее заселение не работает.Я получаю {commentedBy: Null, ...}

1 Ответ

0 голосов
/ 26 сентября 2018

Внесены некоторые изменения в ваш код.В вашем случае comments находятся внутри commentedBy, поэтому сначала вы заполняете comments, а затем commentedBy внутри него.

router.get('/', (req, res) => {
Post.find()
    .populate("author")
    .populate({ path: 'comments', populate: { path: 'commentedBy' } })
    .sort({date : -1})
    .exec()
    .then(posts => res.json(posts));
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...