1

澄清一下:我有一个带有子文档的文档。我创建了一个与另一个文档具有相同数据的新文档,并获得了一个新的 ID。但是,当我复制 subdoc 数组时,他们没有得到新的 id。

子文档 ID 是父文档本地的吗?即以下会是一个问题吗?

[
    {
        "__v": 1,
        "_id": "5214af03a9f53efa61000004",
        "name": "Foo",
        "subdocs": [
            {
                "thing": "value",
                "_id": "5214af03a9f53efa61000006"
            }
        ]
    },
    {
        "__v": 0,
        "name": "Foo",
        "_id": "5214af03a9f53efa61000014",
        "subdocs": [
            {
                "thing": "value",
                "_id": "5214af03a9f53efa61000006"
            }
        ]
    }
]
4

1 回答 1

2

直接存储在集合中的文档的字段有唯一索引_id,但嵌入文档没有,也没有任何要求嵌入文档有_id字段。您提供的两个文档都可以有效地存储在同一个数据库中的 MongoDB 中(我将您的示例解释为两个文档的数组,它们都直接存储在一个集合中)。

于 2013-09-19T21:58:30.950 回答