我对mongodb不太熟悉,所以很难操作子文档。我的目标是实现这样的通讯录:
{
[user1@mail.com]: [
{
email: 'aaa@example.com',
createdAt: '0000-00-00',
updatedAt: '0000-00-00'
}
],
[user@mail.com]: [
{ ... },
{ ... }
]
}
我将那个集合称作“addressbook”,每个条目都是数组类型,用于包含地址信息,例如电子邮件、图片、创建日期等。
问题在于我不知道该如何实现。看起来我需要使用一些操作符,比如$addToSet或$push,但我不知道如何正确地使用它们。我尝试过以下方法:
update({
email: 'user1@mail.com'
}, {
$push: {
'address.$email': {
email: target,
createdAt: new Date(),
updatedAt: new Date()
}
}
})
我知道一件事,使用upsert选项更新集合可以在文档不存在的情况下创建新文档,但是仍然无法创建文档。非常感谢您给予帮助。
'address.$email'
想要做什么?你的需求不是很清楚。 - Shrabanee