Mongodb 为文档创建唯一索引';s存储在数组中的对象
如何为存储在数组中的文档对象创建唯一索引Mongodb 为文档创建唯一索引';s存储在数组中的对象,mongodb,Mongodb,如何为存储在数组中的文档对象创建唯一索引 { _id: 'documentId', books: [ { unique_id: 1, title: 'Asd', }, { unique_id: 2, title: 'Wsad', } ... ] } 我能想到的一件事是自动递增。或者是否有任何mongo方法可以这样做?如果您从您的文档中删除\u id字段,mongo将自动为您添加一个,即: 保证是独一无二的 包含创建的时间戳 还有很多其他的
{
_id: 'documentId',
books: [
{
unique_id: 1,
title: 'Asd',
},
{
unique_id: 2,
title: 'Wsad',
}
...
]
}
我能想到的一件事是自动递增。或者是否有任何mongo方法可以这样做?如果您从您的文档中删除
\u id
字段,mongo
将自动为您添加一个,即:
doc.books.forEach(x => { x.unique_id = new ObjectId() } );
如果从文档中删除
\u id
字段,mongo
将自动为您添加一个字段,即:
doc.books.forEach(x => { x.unique_id = new ObjectId() } );
是的,但我想要实现的是在文档和它的数组对象上都有我的唯一id。因此,考虑到当我
updateOne()
我的文档和$push
到(books)数组时,我需要做的只是使用新属性newobjectid()
更新正在推送的数据(单个图书)。是的,在创建新图书条目时,只需分配newobjectid()
对于您的id字段,顺便说一句,通常使用\u id
作为字段的名称,即使对于内部对象也是如此,因此我会将其创建为{\u id:new ObjectId(),标题:'hello'}
好的,非常感谢您,先生!它工作得很好,就像你说的:)。对,但我想要实现的是在文档和它的数组对象上都有我唯一的id。因此,考虑到当我updateOne()
我的文档和$push
到(books)数组时,我需要做的只是使用新属性newobjectid()
更新正在推送的数据(单个图书)。是的,在创建新图书条目时,只需分配newobjectid()
对于您的id字段,顺便说一句,通常使用\u id
作为字段的名称,即使对于内部对象也是如此,因此我会将其创建为{\u id:new ObjectId(),标题:'hello'}
好的,非常感谢您,先生!它工作得很好,就像你说的:)。你说的是唯一索引,然后是自动增量。我很困惑。你想达到什么目的?我想让我的每一本书都有一个独立的独特属性,这样我就可以区分它们了。例如,在库文档中考虑“JavaScript手册”,用另一个属性LabyActhFruttOffice窗口,数组存储<代码> UngQuyID/<代码>三个七。我很困惑。你想达到什么目的?我想让我的每一本书都有一个独立的独特属性,这样我就可以区分它们了。例如,在库文档中考虑“JavaScript手册”,用另一个属性LabyActhFruttOffice窗口,数组存储<代码> UngQuyID ID/代码>三个七。