我想确保只有一个实例是与实体之间达成协议的文档...我可能对此模型化了,所以我正在寻找建议,以寻求更好的方法。
但是本质上,文档看起来像这样。
{
_id:objectid,
entity_Ids: [objectid]
}
我很好奇确保数组唯一的最佳方法是什么,所以我做 db.agreements.insert(entity_Ids:[1,2]),现在已经有1,2,我会遇到冲突。
我本可以这样做:
{
_id:objectid,
entity1: objectid,
entity2: objectid
}
但是然后我总是必须检查entit1 = 1或entity2 = 1或entity1 = 2或entity2 = 2
答案 0 :(得分:0)
您可以在文档中的任何键上创建唯一索引 因此,请尝试
db.myCollection.createIndex({entity_Ids: 1},{unique: true});