我有以下代码验证我的"时区"字段:
orgSchema.path('timezone').validate(function(value) {
return Timezone.findOne({_id: value}, "_id", function (err, timezone) { return false; });
}, "Please provide a valid timezone");
Run Code Online (Sandbox Code Playgroud)
即使我在最里面的函数中添加"return false",该字段也总是在传递.我知道我错过了某个地方的回调 - 我会感激一些帮助.
一个异步验证需要接受这就是它必须调用提供验证的布尔结果回调第二个参数.
orgSchema.path('timezone').validate(function(value, callback) {
return Timezone.findOne({_id: value}, "_id", function (err, timezone) {
callback(timezone != null);
});
}, "Please provide a valid timezone");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3181 次 |
| 最近记录: |