【发布时间】:2011-04-05 16:18:55
【问题描述】:
是否有首选的 Express 表单处理和验证库?
我真的在寻找与 Django 表单中相似的抽象级别 - 即模板中的验证和错误报告。
如果可以在客户端使用相同的验证,那就太好了。
有没有人用过或写过什么好东西?
【问题讨论】:
是否有首选的 Express 表单处理和验证库?
我真的在寻找与 Django 表单中相似的抽象级别 - 即模板中的验证和错误报告。
如果可以在客户端使用相同的验证,那就太好了。
有没有人用过或写过什么好东西?
【问题讨论】:
看起来有一个位于https://github.com/caolan/forms 的模块。我从未使用过它,但它似乎功能相当齐全。
【讨论】:
.toHTML() 呈现表单。与此相反并扩展@Jean-Philippe 所说的内容,您实际上甚至不需要使用.toHTML() 来获取处理表单所需的几乎所有内容(尽管需要非常仔细地阅读文档才能确定这一点出)。
这看起来也是可行的,并且仍在开发中:https://github.com/ctavan/express-validator
以下是验证表单提交(登录后请求)的示例:
exports.login.post = function(req, res){
req.assert('username', 'Enter username').notEmpty();
req.assert('password', 'Enter password').notEmpty();
res.locals.err = req.validationErrors(true);
if ( res.locals.err ) {
if ( req.xhr ) {
res.send(401, { err: res.locals.err });
} else {
res.render('login', { err: res.locals.err });
}
return;
}
//authenticate user, data is valid
};
【讨论】: