【发布时间】:2020-09-22 03:10:29
【问题描述】:
我有一个复合唯一索引
db.collection("sheets").createIndex(
{
'cells.x': 1,
'cells.y': 1
},
{ unique: true }
);
所以我可以有这样的文件:
{
_id: "xxx",
name: "sheet 1",
cells: [{x:0, y:1, sheet_id: "xxx"}, {x:1, y:1, sheet_id: "xxx"}]
}
但是当我创建 2 具有空“单元格”数组字段的文档时, 我收到此错误:
(node:23492) UnhandledPromiseRejectionWarning: MongoError: E11000 duplicate key error collection: test.sheets index: cells.x_1_cells.y_1_cells.sheet_id_1 dup key: { cells.x: null, cells.y: null, cells.sheet_id: null }
注意:
复制键:{ cells.x: null, cells.y: null, cells.sheet_id: null }
当然我在数组中没有 { cells.x: null, cells.y: null, cells.sheet_id: null }。它是空的...
如果一个文档中的“单元格”数组不为空,我可以创建一个包含空“单元格”的第二个文档。
我该如何解决这个问题并拥有多个空的“单元格”数组?
【问题讨论】: