Fil*_*šek 2 mongoose mongodb node.js
我知道如何将字符串设置为在我的架构中是唯一的,如下所示:
string: { type: String, unique: true }
Run Code Online (Sandbox Code Playgroud)
但是有没有办法在对象上使用具有真值的唯一布尔值并使用假值(默认设置)?我需要的是:如果我尝试保存一个具有真值的对象,而一个具有真值的对象已经存在,则返回错误。
感谢您的帮助。
您可以使用 MongoDB 对3.2 中添加的部分索引的支持来执行此操作。
var mySchema = new Schema({ oneTrue: Boolean });
mySchema.index({oneTrue: 1}, {unique: true, partialFilterExpression: {oneTrue: true}});
Run Code Online (Sandbox Code Playgroud)
这将oneTrue仅在其值为的字段上创建唯一索引true。这样,false允许多个具有值的文档,但只有一个位于true.
| 归档时间: |
|
| 查看次数: |
1118 次 |
| 最近记录: |