Как взять встроенный объект и сделать его основным объектом в мангусте?

#node.js #mongodb #express #mongoose

Вопрос:

У меня есть модель, которая отслеживает, какой пользователь следовал какому автору. В конечной точке мне нужно обслужить массив подписчиков автора. Для этого я сделал запрос к базе данных, проходящей author фильтрацию, и заполнил follower поле. данные выглядят примерно так:

 [
    {
      "follower": {
        "_id": ""
        "name": "",
        "profilePicture": "",
        "phone": "",
        "email": ""
      },
      "author": "6137378438a6eb01a6a669ab",
      "_id": "6131fb2e486dd00c88c99ed5"
    },
    {
      "follower": {
        "_id": ""
        "name": "",
        "profilePicture": "",
        "phone": "",
        "email": ""
      },
      "author": "6137378438a6eb01a6a669ab",
      "_id": "6131fb2e486dd00c88c99ed5"
    }
  ]
 

Но мне нужны данные только о подписчиках. Как я могу взять объект подписчика и сделать его объектом make таким, чтобы вышеуказанный результат был объектом массива подписчиков.

Ответ №1:

Используйте проект и карту

 await Model.find({}, { follower: 1 }).map(f => f.follower);