gpt4 book ai didi

node.js - 验证在带有 Mongo 的 Node 中的 Mongoose 中不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 01:51:45 25 4
gpt4 key购买 nike

我已经为用户创建了一个架构并添加了验证

const userSchema = new Schema({
email:{type:String ,required : true, unique: true, lowercase: true ,validate : emailValidators},
password:{type:String ,required : true ,validate:validPassword}

});

验证密码功能

let validaEmailChecker =(email)=>{
if(!email){
return false;
}else{
const regExp = new
RegExp(/^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/);
return regExp.test(email)

}
}

验证密码功能

let validPassword =(password)=>{
if(!password){
return false;
}
else{
const regExp = new RegExp( /^[a-zA-Z0-9!@#$%^&*]{5,10}$/);
return regExp.test(password)

}
}

调用用户函数使用

 user.save((err) => { 
// use save or nor
}

在第二个属性的架构中添加验证函数后,用户保存函数未调用仅在与电子邮件验证器一起使用时才起作用,当添加密码验证器时添加它不起作用

最佳答案

您已将 emailValidators 设置为 email 字段的验证函数,而您显示的函数名为 validaEmailChecker。更改其中一个以匹配另一个,就像使用密码字段一样。

关于node.js - 验证在带有 Mongo 的 Node 中的 Mongoose 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49377571/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com