NodeJS MVC 模型验证
NodeJS MVC Model Validation
这可能是
一个笼统的问题,但我想知道是否有人建议为 NodeJS MVC 应用程序实现模型验证。我目前正在开发一个应用程序,其中模型在存储持久数据 (DynamoDB) 时具有必填字段和可选字段。
我正在考虑在模型文件中拥有一个验证功能,以确保根据需要格式化和填充适当的字段,但希望确保该方法是模块化的、可重用的、干净的和高效的。
在.Net MVC框架中有一些使用这种功能的例子,但并不是真正的自定义实现,特别是Javascript。
示例模型:
用户
var User = function (userObj) {
this.email = userObj.email; //required
this.firstName = userObj.firstName; //required
this.company = userObj.company; //optional
}
任何反馈不胜感激!
我强烈推荐joi
var joi = require('joi');
var userSchema = joi.object().keys({
email: joi.string().email().required(),
firstName: joi.string().required(),
company: joi.string() // or object, or what have you
});
var User = function(userObj) {
var err = userSchema.validate(userObj).error;
if (err) {
// handle error and abort
}
// other code...
}
或者,您可以在模型的原型上创建自定义validate
函数,以包装 joi 的验证。
自述文件有大量的文档,它非常易于使用,并输出了 rest api 所需的所有信息(实际上您可以将其直接插入 hapijs)
相关文章:
- 如何在不使用mvc 4中的模型的情况下进行客户端验证
- 如何在不通过模型验证的情况下屏蔽文本输入中输入的字符
- 概念验证模型控制器调用正确的实例
- 跳过Sails.js中的模型验证
- 主干.js:为每个模型添加验证
- 骨干模型中的验证
- Kendo UI自定义验证不适用于模板和视图模型
- 根据模型验证,显示弹出消息或视图
- 使用ajax的javascript应用程序的身份验证模型
- 骨干模型验证问题
- Select选项包含在验证模型MVC时不起作用
- 如何在运行验证时保持ng模型值
- 在使用 BackboneJS 模型时验证 ReactJS 输入
- AngularJS 无法自定义验证模型数组值
- 续集模型的客户端模型验证
- 在没有模型的 MVC 3 中进行验证
- 访问 Twitter API - 身份验证和骨干模型
- 如何在 NodeJS 中使用续集设置模型验证
- 骨干js中的验证模型
- js非常简单的验证模型不工作-跟随webtuts教程