更新mongodb文档会插入另一个新文档

时间:2019-02-26 08:30:34

标签: node.js mongodb express

执行此操作不会更新现有文档,而是插入具有更新内容的新文档。尝试了多次传递了另一个属性upsert:false来更新一个方法,但是没有起作用。

       class Product {
         constructor(title,img,offerprice,actualprice,description,id){
           this.title = title
           this.img = img
           this.offerprice = offerprice
           this.actualprice = actualprice
           this.description = description
           this._id = id ? new mongodb.ObjectId(id) : null
       }
        save(){
            const db = getDb();
         let Opr;
           if(this._id){
          Opr = db.collection('products').updateOne({ _id:this._id},{
          $set:this
            })
         }
        else{

      Opr = db.collection('products').insertOne(this)

        }
       return Opr.then(result => {
       console.log(result)
      })
       .catch(err => console.log(err));

        }

1 个答案:

答案 0 :(得分:0)

谢谢您的帮助。 :)我在传递错误的id作为参数时犯了一个错误。 https://avrbrands.herokuapp.com