今天如果我想更新資料我可以用findOneAndUpdate, 但資料如果本身就不存在於資料庫裡時, 而我又想將這筆資料插入進去
那我們可能需要在callback function裡作新增的動作如下
Customer.findOneAndUpdate( query, update, function(err,result){
if(!err){
if(! result ){
result = new Customer( update )
}
result.save(function(err){
if(err) throw err
})
}
})
而更簡單的方法是我們可以傳入 { upsert: true} 這個option參數來做到一樣的事情
Customer.findOneAndUpdate( query, update, {upsert:true}, function(err){
if(err) throw err
})
留言
張貼留言