【发布时间】:2016-03-16 00:12:51
【问题描述】:
我有一个架构并指定登录是唯一的,这是真的。当我使用 findByIdAndUpdate 并传递查询 $set 来更新用户对象时,它确实 not 在登录时抛出错误。有谁知道我为什么以及如何更新对象并强制模式验证?
谢谢!
// 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);
});
【问题讨论】:
-
Nam,您是否通过 JavaScript 使用客户端验证来检查重复登录尝试?这需要与服务器交互。不是吗?此外,您的问题需要编辑才能让其他人清楚地理解。
-
@Rajesh Paul,我的问题与 Node.js 和 Mongoose.js 有关,但与客户端无关。
-
好的,那它不是我的区域。
-
没问题@Rajesh Paul,谢谢!
-
您需要在架构中为
login提供type值。也许这只是一个错字,因为如果你把它排除在外,Mongoose 应该会抛出异常。
标签: javascript node.js mongoose