0
我敢肯定,问题是与密码验证程序,因为如果我注释掉文档插入。另外如果我输入一个有效的密码一切正常。这里是我的整个UserSchema猫鼬得到模型验证失败,而不是自定义错误消息
var UserSchema = new Schema({
firstName: String,
lastName: String,
email: {
type: String,
unique: true,
match: /.+\@.+\..+/
},
website: {
type: String,
set: urlModifier
},
username: {
type: String,
trim: true,
required: true,
unique: true
},
password: {
type: String,
validate: [
function(password) {
return password.length >= 6;
},
'Password should be longer'
]
},
createdAt: {
type: Date,
default: Date.now
},
role: {
type: String,
enum: ['admin', 'owner', 'user']
}
});
我有这个问题是不是我的自定义错误消息我得到
ValidationError: User validation failed
<br> at model.Document.invalidate (C:\Users\lotus\Desktop\mastering_mean\application\node_modules\mongoose\lib\document.js:1162:32)
<br> at C:\Users\lotus\Desktop\mastering_mean\application\node_modules\mongoose\lib\document.js:1037:16
<br> at validate (C:\Users\lotus\Desktop\mastering_mean\application\node_modules\mongoose\lib\schematype.js:651:7)
<br> at C:\Users\lotus\Desktop\mastering_mean\application\node_modules\mongoose\lib\schematype.js:679:9
<br> at Array.forEach (native)
<br> at SchemaString.SchemaType.doValidate (C:\Users\lotus\Desktop\mastering_mean\application\node_modules\mongoose\lib\schematype.js:656:19)
<br> at C:\Users\lotus\Desktop\mastering_mean\application\node_modules\mongoose\lib\document.js:1035:9
<br> at process._tickCallback (node.js:355:11)
猫鼬版^ 4.05
不知道这是一个错误,API改变了,或者我做错了什么。