Как получить конкретное значение ключа документа с помощью мангуста - PullRequest
0 голосов
/ 31 мая 2019

Здравствуйте, я новичок в mongoose, express, и я хочу GET определенное значение ключа из всех объектов массива документов и показать в ответ.

У меня есть следующие данные в документе.

[{
    "admins": {
        "email": "rrg_gg@infomail.com",
        "password": "$2a$10$VNS6RraM5GDh.EU/KJuVle8Qjntog0eSPW3Zup6XDvlDR25Jor/56",
        "firstName": "hjjh",
        "lastName": "ZY",
    },
    "_id": "5cefa5d0531e6b597dceb6d0",
    "companyName": "XYZ",
    "address": "World",
    "contactDetails": "54534454",
    "companyID": "044025",
    "__v": 0
},
{
    "admins": {
        "email": "beans-gg@merok.com",
        "password": "$2a$10M5GDh.EU/KJuVle8Qjntog0eSPWDR25Jor/56",
        "firstName": "gg",
        "lastName": "yu",
    },
    "_id": "5cefa5d0531e6b5678dceb6e8",
    "companyName": "gY",
    "address": "World",
    "contactDetails": "534454",
    "companyID": "984556",
    "__v": 0
}]

Я хочу получить список всех companyID из документа.Как я могу запросить это?

Я пробовал это в маршруте, но получил пустой ответ: -

 router.get('/getCid', function(req, res, next){
    Admin.find({}, function(err, admin) {
    res.json(admin.companyID);
  });
});

Как я могу получить список идентификаторов компании?

1 Ответ

1 голос
/ 31 мая 2019

вы должны отобразить вывод

router.get('/getCid', function(req, res, next){
    Admin.find({}, function(err, data){
    let companyIDS = data.map((admin)=>{return admin.companyID});
    res.json(companyIDS);
  });
});

или вы можете изменить свой запрос, чтобы выбрать только companyID поле из коллекции

 router.get('/getCid', function(req, res, next){
        Admin.find({},'companyID',function(err, data){
        res.json(data);
      });
    });

подробнее о выбранных столбцах см. Здесь: Mongoose, Выберите определенное поле с помощью поиска

...