验证关系模型的唯一性

时间:2018-09-24 22:15:41

标签: mongodb mongoose mongoose-schema

我有一个用户可以互相关注的应用程序。建立这种关系后,会将文档添加到集合中。该文档具有两个字段followerfollowee。我想防止重复关系的插入。我不想查询数据库,等待一个诺言,然后插入,因为这似乎是一种低效的方法。如果新文档的followerfollowee与现有文档匹配,我宁愿它停止保存新文档。

1 个答案:

答案 0 :(得分:1)

考虑创建一个Unique Compound Index索引:

db.members.createIndex( { follower: 1, followee: 1 }, { unique: true } ) 

创建的索引对followerfollowee值的组合具有唯一性。

  

唯一索引可确保索引字段不会存储重复项   价值观即对索引字段实施唯一性。默认情况下,   在创建期间,MongoDB在_id字段上创建唯一索引   集合