Как найти документ в MongoDB не по _id, а по нашему индексу? - PullRequest
0 голосов
/ 20 марта 2019

studentRouter.js

 studentRouter.route('/:stuID')
    .get((req, res, next) =>
    {
        Students.findById(req.params.stuID)
            .then((student) =>
            {
                res.statusCode = 200;
                res.setHeader('Content-Type', 'application/json');
                res.json(student);
            }, (err) => next(err))
            .catch((err) => next(err));
    })

Я хочу найти элемент в базе данных, используя stuID, но mongoose всегда ищет элемент, используя индекс _id, хотя я добавил stuID в качестве индекса в БД. Есть ли способ найти его, используя stuID?

eg- localhost:3000/students/stuID

1 Ответ

2 голосов
/ 20 марта 2019

Просто замените findById на:

Students.findOne({stuID: req.params.stuID})

Док: https://mongoosejs.com/docs/api.html#model_Model.findOne

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...