2017-04-10 24 views
0

ここで私はnodejs、expressjs、angularjsからなる私のMeanアプリケーションにmongooseを使っています。ここmongooseを使ってmongoDbにcase文を書くには

私の問題は、私は今、私は

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."); 
       } 

以下マングーススキーマ

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で私は、その後、(存在しないメール)show Email not exist

  • その後、(存在しないメール検証Eメール)show please verify email
  • (電子メールの存在を、電子メール

    1. のようにcase文を使用しました検証しないadminapproved)、その後show wait for admin process

    誰もがを使用してmongoDBで私を助けることができます同じ操作を達成する方法。

  • 答えて

    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!"); 
        } 
    }) 
    

    は、この試します

    関連する問題