Model.save () прослушивается? - PullRequest
       2

Model.save () прослушивается?

0 голосов
/ 08 февраля 2020

Я пытаюсь пройти тест freecodecamp, который требует предоставить имя и сохранить его в коллекции. Тем не менее, каждый раз, когда я нажимаю кнопку отправки в моей форме, в консоли появляется длинное предупреждающее сообщение:

(node:20679) DeprecationWarning: Mongoose: mpromise (mongoose's default promise library) is deprecated, plug in your own promise library instead: http://mongoosejs.com/docs/promises.html

Это мой код маршрута:

app.post('/api/exercise/new-user/', (req, res) => {
  const {username} = req.body;
  if(username===''){
    res.send('Name must not empty');
  }else{
    const aNewTrainee = new PersonExcer({name:username});
    aNewTrainee.save().then(aTrainee => {
            res.status(200).json(aTrainee);
        })
        .catch(err => {
            res.status(400).send('adding new todo failed');
        });
  }  
})

И поскольку, если я попытался выполнить запрос к коллекции документов после сохранения, результата не было, это могло бы означать, что вызов save() не работал:

//This has no result
app.get('/api/exercise/users', (req, res)=>{
  PersonExcer.find(function(err, docs) {
    if (err) {
            console.log(err);
        } else {
            res.json(docs);
        }
  });
  //This has no result
})

Пожалуйста, посмотрите полный код здесь (редактировать: ссылка удалена).

Ответы [ 2 ]

1 голос
/ 10 февраля 2020

Я пробовал ваш код, и он работает нормально, пожалуйста, обновите / обновите ваш мон goose до последней версии.

Вы можете использовать эту командную строку ниже, чтобы проверить какие пакеты имеют более новые версии:

npm outdate

Для upgrade вашего мон goose вы можете использовать эту командную строку:

npm install mongoose@latest --save

Для update вы можете использовать эта командная строка:

npm update mongoose

Я надеюсь, что это может помочь вам.

0 голосов
/ 08 февраля 2020

Возможно, метод вызова неправильный, проверьте https://mongoosejs.com/docs/promises.html для ответов

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