【发布时间】:2016-03-13 22:46:37
【问题描述】:
我有一个复杂的数据类型,我希望将其存储在猫鼬模型中。假设我的架构如下
dataSchema : {
name : 'string',
body : 'object'
}
对于我的模型,在 save 或 findOneAndUpdate 期间,我想使用引发自定义错误消息的解析器对主体执行一些验证。
我目前对验证的处理如下:
dataSchema.path('body').validate(function(body,callback){
// Attempt to parse the structure
try{
parse(body)
callback(true)
} catch(me) {
// callback(me) // does not help!
callback(false)
}
}, 'Unable to parse body')
同时
dataSchema.pre('findOneAndUpdate', function(next) {
this.options.runValidators = true;
next();
});
这似乎按预期工作。但是我想自定义来自验证器的错误消息(当前:'无法解析正文'),以便我可以在 catch 语句中传播错误信息me。
这可能吗?
【问题讨论】:
标签: validation mongoose