这里我使用mongoose作为我的Mean应用程序,它包含nodejs,expressjs和angularjs。
我的问题是我需要使用不同的查找条件并根据发送错误信息或数据
现在我使用如下
User.findOne({ Email: req.body.Email }, (err, user) => {
if (err) { return done(err); }
if (!user) {
return res.json("Account with that email address does not exist.");
}
mongoose schema
const userSchema = new mongoose.Schema({
FirstName: String,
LastName: String,
Email: { type: String, unique: true },
UserName: String,
Password: String,
PhoneNumber: String,
EmailVerified : Boolean,
AdminApproved : Boolean
}, { versionKey: false });
但现在我的电子邮件已经过验证和管理员批准等字段。
在Ms-Sql中我使用了像
这样的case语句show Email not exist
show please verify email
show wait for admin process
任何人都可以mongoDB
使用mongoose
如何帮助我实现相同的操作。
答案 0 :(得分:1)
到目前为止你已经做得很好,你只需要再做几次检查。
试试这个:
User.findOne({ Email: req.body.Email }, (err, user) => {
if (err) { return done(err); }
else if (!user) {
return res.json("Account with that email address does not exist.");
}
else if(!user.EmailVerified){
return res.json("Please verify your email");
}
else if(!user.AdminApproved){
return res.json("Wait for admin process, Not Admin approved yet!");
}
})