2

问候大家,

我定义了一个深度嵌入的猫鼬模型“Person”,其中包含一个“Contact”字段,“Contact”有一个用于此人工作、家庭、送货等地址的“Address”数组。

当我想更新地址并使用模型的“保存”功能时,更改并未反映在数据库中。

            console.log(person.Contact.Address[i].City = 'Chicago');
            person.save(function (err) {
                if (!err) {
                   console.log(person.Contact.Address[i].City);

console.log 表明字段 City 已更新为新值,但 mongodb 的值保持不变。

你能帮我解决这个问题吗?

谢谢!加里

4

1 回答 1

5

该问题已通过使用解决markModified

person.markModified('Contact.Address');
person.save()

仍然不确定何时需要使用 markModified,因为在大多数其他情况下,更改反映在 mongodb 中而不使用它。

于 2013-02-18T13:30:45.417 回答