搜尋

首頁  >  問答  >  主體

使用mongoose更新mongodb的問題

知道mongodb可以透過設定update的第三個參數為true來實現沒有資料時插入,有資料時更新。
那使用mongoose封裝的update方法如何傳入這個參數呢?
mongoose的文檔中提供的是update(doc, options, callback)這三個參數

伊谢尔伦伊谢尔伦2790 天前617

全部回覆(2)我來回復

  • 仅有的幸福

    仅有的幸福2017-05-02 09:26:06

    http://mongoosejs.com/docs/ap...

    MyModel.update({ name: 'Tobi' }, { ferret: true }, { upsert: true }, function (err, raw) {
    if (err) return handleError(err);
    console.log('The來自Mongo 的原始回應是', raw);
    });

    回覆
    0
  • 巴扎黑

    巴扎黑2017-05-02 09:26:06

    將update方法第3個參數的upsert屬性設為true即可

    Book.update(
    // 查询
    {
        name: "The Kite Runner"
    },
    // 更新
    {
        auther: "Khaled Hosseini"
    },
    // 其他参数
    {
        upsert: true,
    }, function(err, doc)
    {
        if (err) console.log(err);
        console.log(doc);
    });
    • 當資料庫中存在The Kite Runner時,更新文件的auther屬性;

    • 當資料庫中沒有The Kite Runner時,插入The Kite Runner文件;

    回覆
    0
  • 取消回覆