0
我正在使用下面的代碼來更新集合中的現有文檔。我想推新項目到一個數組。但是,腳本既不會引發異常也不會向數組添加任何內容。無法將新項目添加到MongoDB陣列
請求專家建議解決問題。
transportModel.findOne({ "name": req.body['providerName'], "contact.postalCode": parseInt(req.body['postalCode']) },function (err, doc) {
if (err) {
logger.error("Error while updating record : - " + err.message);
} else if (doc === null) {
logger.error("Error while updating record in transport details : - unable to update database");
} else {
doc.contact.addressLine1= req.body['addressLine1']
doc.contact.addressLine2= req.body['addressLine2']
//An array in transportModel.
//Add new items to array
doc.vehicle.push({
vehicleType:req.body['vehicleType'],
})
doc.save()
}
});
胡亂猜測有,但不是'.push()'異步你的情況?如果是這種情況,也許'doc.save()'在實際推送之前執行。 – Seblor
我的壞。我在保存文檔前返回響應。現在它工作正常 –
有沒有什麼辦法檢查doc.save()是否返回任何錯誤? –