问题描述
因此,当注册表上的字段无效时,我试图在列表中获取映射的错误验证值。但即使 4 个字段无效,我也只得到 2 个列表项,而且每个字段的消息值也没有显示在错误列表中。有人可以帮忙吗,它在教程中的工作如下。可能这是因为快速验证器多年来发生了变化,并且我使用的教程材料是几年前的。任何人都可以指导我采用一种新的方式来做到这一点。
这是我的 app.js 的片段,我在其中使用了 express-validator 的检查功能
router.post('/register',upload.single('profileimage'),(check('name','Name field is required!').notEmpty(),check('email','Email field is required!').isEmail(),check('username','User name field is required!').notEmpty(),check('password','Password field is requird!').notEmpty()),function(req,res,next) {
var name =(req.body.name);
var email =(req.body.email);
var username =(req.body.username);
var password =(req.body.password);
var password2 =(req.body.password2);
check('password2','Passwords do not match!').equals(req.body.password);
if(req.file){
var profileimage=req.file.filename;
}else
{
var profileimage='noimage.jpg';
}
//form validator
;
//check errors
/*try{
validationResult(req).throw();
console.log('No Errors');
}catch(err){
console.log('Errors') ;
res.render('resgister',{
errors:err
});
}*/
var errors =validationResult(req);
if(!errors.isEmpty()){
res.render('register',{
errors:errors
});
}else{
console.log('No Errors');
}
和用于呈现它的 register.pug 代码如下所示:
h2.page-header Register
p Please register using the form below
ul.errors
if errors
each error,i in errors
li.alert.alert-danger #{error.msg}
form(method='post',action='/users/register',enctype='multipart/form-data')
.form-group
label Name
input.form-control(name='name',type='text',placeholer='Enter Name')
.form-group
label Email
input.form-control(name='email',type='email',placeholer='Enter Email')
.form-group
label User Name
input.form-control(name='username',placeholer='Enter User Name')
.form-group
label Password
input.form-control(name='password',type='password',placeholer='Enter Password')
.form-group
label Repeat Password
input.form-control(name='password2',placeholer='Confirm password')
.form-group
label Profile Image
input.form-control(name='profileimage',type='file')
br
input.btn.btn-secondary(type='submit',name='submit',value='Register')
``
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)