Как собрать данные sh в массив MongoDB с помощью mongoose - PullRequest
1 голос
/ 20 февраля 2020

У меня есть пустой массив в MongoDB

И я хочу добавить в него sh идентификатор.

router.put(
  "/like/:id",
  (req, res) => {
    User.findOne({ _id: req.user._id }).then(data => {
      if (data) {
        Post.update(
          { _id: ObjectId(req.params.id) },
          { $push: { likes: req.user._id } }
        );
      }
    });
  }
);

Этот код не работает для достижения этой цели.

1 Ответ

0 голосов
/ 20 февраля 2020
router.put (
  "/addlike/:id",
  passport.authenticate("jwt", {
    session: false
  }),
  (req, res) => {

   // use try-catch 
   try { 
    User.findOne({ _id: req.user._id }).then(data => {
      if (data) {
        Post.findOneAndUpdate(
          { _id: ObjectId(req.params.id) },
          { $push: { likes: req.user._id },
          { "new": true, "upsert": true} }
        );
      }
    });
   } catch(err){
    // handle error
    console.log('Error => ', err);
   }
  }
);

Я проверил это в моей локальной системе ... работает нормально

...