我想使用索引替換數組中的對象,但不會保存任何內容。這是該文件的樣子:在Mongoose中替換數組中的對象
{
"_id": {
"$oid": "58a71ec0c80a9a0436ae2fb1"
},
"owner": "[email protected]",
"contacts": [
{
"work": "",
"home": "",
"mobile": "",
"email": "",
"company": "",
"last": "Contact",
"middle": "",
"first": "New"
},
{
"first": "Another",
"middle": "",
"last": "Contact",
"company": "",
"email": "",
"mobile": "",
"home": "",
"work": ""
}
],
"__v": 1
}
而這就是我試過..
Contacts.findById({_id: "58a71ec0c80a9a0436ae2fb1"}, function(err,document) {
document.contacts[req.body.indexOfObjectToBeEdited] = req.body.updatedObject
console.log(document)
document.save(function(err) {
return res.json({event:"Updated Contact"})
})
})
權之前document.save()我CONSOLE.LOG(文件),它反映了正確的變化。但是當我保存時,mongodb中沒有更新,我也沒有收到任何錯誤。我應該做什麼不同?
的文檔中,你是什麼意思時,你說:「當我打印」?你的意思是在保存功能之後? –
在document.save之前,我將console.log(document)並且它看起來更新了。但是當我在實際保存後檢查數據庫時,它看起來像從未更新過。 – Zach