如果我有这个架构:
var userSchema = Schema(
{name : {
type: String
}
});
userSchema.path('name').validate(function(value) {
return value.length > 4;
}, 'Name is too short');
userSchema.path('name').validate(function(value) {
return hasNoNumbers(value);
}, 'Name cannot have numbers');
var User = mongoose.model('User', userSchema);
然后我创建一个这样的模型并运行validate函数:
var newUser = new User({name: '1da'});
newUser.validate(function(err) {
console.log(err.errors.name);
})
这仅记录第一条错误消息“名称太短”。但是,name属性不符合两个验证要求。有没有办法显示错误信息?
谢谢
答案 0 :(得分:1)
显然这个功能并没有在mongoose的v3中实现。
https://github.com/LearnBoost/mongoose/pull/1214#issuecomment-15746525
当v4稳定后,我会再试一次。
在此之前,该模块似乎解决了这个问题: