2016-07-27 6 views
0

こんにちは私はmongooseを使ってmongodbからデータを取得しています。私はヒロクに展開されたアプリを持っています。私のアプリケーションをローカルで実行すると、ユーザーが存在する場合、検証エラーが発生します。もし私がherokuでそれを実行すると、私は検証エラーを取得するが、アプリもまたクラッシュしています。mongooseの検証ヒロクのクラッシュ

これはユーザー作成の投稿要求です。

exports.create = function (req, res, next) { 
     var newUser = new User(req.body); 
     console.log(newUser); 
     newUser.provider = 'local'; 
     newUser.role = 'user'; 
     newUser.save(function(err, user) { 
     if (err) return res.status(400).json(err); 
     var token = jwt.sign({_id: user._id }, config.secrets.session, { expiresIn: 60*5 }); 
     res.json({ token: token }); 
     }); 
    };  

これはマングース検証です。

UserSchema 
    .path('email') 
    .validate(function(value, respond) { 
     var self = this; 
     this.constructor.findOne({email: value}, function(err, user) { 
     if(err) throw err; 
     if(user) { 
      if(self.id === user.id) return respond(true); 
      return respond(false); 
     } 
     respond(true); 
     }); 
    }, 'The specified email address is already in use.'); 

これはエラーです:

"スタック":「MongooseError.ValidationErrorでエラー\ nを(/Users/panayiotis/WebstormProjects/SmartHome/node_modules/mongoose/lib/error/validation.js: 22:16)\ nでの/ユーザ/ panayiotis/WebstormProjects/SmartHome/node_modules/model.Document.invalidate(/Users/panayiotis/WebstormProjects/SmartHome/node_modules/mongoose/lib/document.js:1162:32)\nでマングース/ libに/ document.js:1037:検証時16 \ n個(/Users/panayiotis/WebstormProjects/SmartHome/node_modules/mongoose/lib/schematype.js:653:7)\n /ユーザ/ panayiotisで/ WebstormProjects/SmartHome /node_modules/mongoose/lib/schematype.js:678:11\n(クエリ)(/ Users/panayiotis/WebstormProjects/SmartHome/server/api /ユーザー/ user.model.js:80:16)\ nは/Users/panayiotis/WebstormProjects/SmartHome/node_modules/mongoose/node_modules/kareem/index.js:177:19\nでの/ユーザ/ panayiotis/WebstormProjects/SmartHome nextTickCallbackWith0Argsで/node_modules/mongoose/node_modules/kareem/index.js:109:16\n(のNode.js:420:9)\ n process._tickCallbackで(のNode.js:349:13)」、 "メッセージ" "ValidationErrorを"、 "エラー":{ "メール":{ "プロパティ":{ "タイプ": "ユーザー定義"、 "メッセージ": "、 "名前" を "ユーザの検証に失敗しました"指定されたメールアドレスは既に使用されています。 "、 "パス ":"メール "、 "値 ":" [email protected] " }、

+0

イムを更新し解決していますが、(真の)最後の '応答を返すようにしようとしている。あなたの検証に'? – CENT1PEDE

答えて

0

は、私はそれがないことを確認かかわらず、マングース

関連する問題