我試圖第二次插入文檔時沒有暱稱時出現MongoDB錯誤。該文件已經有獨特的領域和非必需的。重複鍵錯誤收集與唯一字段
這裏是我的貓鼬模型:
var schema = new Schema ({
username: {
type: String,
required: false
},
nickname: {
type: String,
required: false,
unique: true,
trim: true
},
status: {
type: String,
required: false,
trim: true,
minlength: 1,
maxlength: 100
},
avatar: String,
online: {
type: Boolean,
default: false
},
created: {
type: Date,
default: Date.now
},
device: {
type: ObjectId,
ref: 'Device',
required: false
},
createdRooms:[{
type: Schema.Types.ObjectId,
ref: 'Room'
}],
facebook: {
facebookToken: {
type: String,
required: false,
trim: true,
unique: false
},
facebookId: {
type: String,
required: false,
trim: true,
unique: false
}
}
},
{
toObject: {
virtuals: true
},
toJSON: {
virtuals: true
}
});
這是第一次,沒有一個暱稱文件被添加到數據庫中,但是當我想保存另一個文檔沒有外號,我得到一個錯誤:
MongoError: E11000 duplicate key error collection: grooptag.users index: nickname_1 dup key: { : null }
難道不是暱稱不是必需的問題,而是獨特的嗎? –
@NadiaCerezo是的,但如何確保該字段是唯一的,而不是必需的? – nickheck