我是一名平均学习者。
我编写了一个Schema并将其保存在Controller类中。 在模式中,我像这样定义验证错误消息
var userSchema = new Schema( {
name: {type: String, required : 'please insert name'}
});
User = mongoose.model('User', userSchema);
module.exports = {
User : User
};
将其保存在控制器类中并打印错误
insertUser.save(function (err,user){
if(err) {
console.log(err);
res.send(err);
}
else res.send("inserted user name : " + user.name);
});
但我发现错误信息
{"message":"Validation failed","name":"ValidationError","errors":{"name": {"message":"Validator \"required\" failed for path name with value `undefined`","name":"ValidatorError","path":"name","type":"required"}}}
什么样的改变让我实现了显示正确的验证信息? 谢谢你提前。
答案 0 :(得分:0)
var userSchema = new Schema({
name: { type: String }
});
userSchema.path('name').validate(function (value) {
return value.length !== 0;
}, 'please insert name');