我有一个模式并指定登录是唯一的。当我使用 findByIdAndUpdate 并传递查询 $set 来更新用户对象时,登录 dup 时它没有抛出错误。有谁知道为什么以及如何更新对象并强制模式验证?
谢谢!
// UserSchema.js
var schema = new Schema({
login: {
required: true,
unique: true
},
password: {
index: true,
type: String
}
});
// Update
UserSchema.findByIdAndUpdate('someID', { '$set': { login: 'abc' } }, function (error, user) {
callback(error, user);
});