我有这些架构:
var userSchema = new mongoose.Schema({
username: {type: String,unique: true}
});
mongoose.model( 'User', userSchema );
var fooSchema = new mongoose.Schema({
title : {type: String,trim: true},
owner : {type: mongoose.Schema.Types.ObjectId, ref: 'User'}
});
fooSchema.index({ title: 1, owner: 1 }, { unique: true }); //does not work
mongoose.model( 'Foo', fooSchema);
我想要使用验证,然后每个foo都可以拥有唯一用户的唯一标题
我尝试了
fooSchema.index({ title: 1, owner: 1 }, { unique: true });
但是如果另一个用户创建具有相同标题的新foo,我也有错误
更新:
我向unique: true
添加了username
,但我遇到了同样的问题
答案 0 :(得分:1)
对于这个休眠线程的新观众:
mySchema.index({field1: 1, field2: 1}, {unique: true});
见这个帖子: