首页 > 解决方案 > 无法使用 Mongoose 更新到 MongoDB 数据库

问题描述

我想更新到数据库。似乎没有插入数据,尽管 console.log 消息正确显示。

router.post('/find_teacher',function(req,res){

  // update Data
  var updateData={
    replacement: req.body.replacement,
    flag:1,
  };
  var message='Data has been not updated';
  Timetable_relief.updateOne({_id:req.params.id},updateData,{upsert: true},function(err,numrows){
      if(!err){
        console.log(updateData);
        console.log('Replacement Are Created');
        res.redirect('/timetable_relief');
      }
  });
});

标签: node.jsmongodbmongoose

解决方案


如果您需要路线中的 id,您需要定义如下路线

 router.post('/find_teacher/:id',function(req,res){

  // update Data
  var updateData={
    replacement: req.body.replacement,
    flag:1,
  };
  var message='Data has been not updated';
  Timetable_relief.updateOne({_id:req.params.id},updateData,{upsert: true},function(err,numrows){
      if(!err){
        console.log(updateData);
        console.log('Replacement Are Created');
        res.redirect('/timetable_relief');
      }
  });
});

在这里,您的 req.params.id 未定义,这就是 mongodb 查询不起作用的原因


推荐阅读