node.js mongodb query 에 대해 궁금한 점이 있습니다.

조회수 1736회

nodejs 코드 작성 중에 mongodb query에 대해 궁금한 점이 생겨 질문 올립니다.

...
User.findOne({email : email}).then(
            function fulfilled(user){
                if(!user){
                    done(null, false, {message: '존재하지 않는 이메일 입니다.'});
                }
                if(user.password === encryptPW(password, user.salt)){         
                    var userinfo = { _id: user._id, name: user.name, email: user.email};
                    done(null, userinfo);
                } else{
                    done(null, false, {message: '비밀번호가 다릅니다.'});
                }
            }, function rejected(err){
                  err.code = 500;
                  next(err);
            });});
...

위 코드 중,

User.findOne({email : email}).then(
            function fulfilled(user){

이부분에서 User Collection에서 조건에 해당하는 user를 결과로 얻는 걸 알 수 있어서

var user = User.findOne({email : email});

이렇게 작성하여 조건에 해당하는 user를 얻어 저장하려 했습니다. user에는 아래와 같이 저장되길 기대했습니다.

{ _id : ..., 
   name : ...,
   email : ...,
   password : ...,
   ...
} 

그러나 원하는 대로 user가 저장되지 않는 걸 확인 하였습니다. 이렇게 하면 왜 user에 대한 정보를 가져오지 못하는 지 궁금합니다...!

  • (•́ ✖ •̀)
    알 수 없는 사용자
  • MongoDB에 저장안되는 걸 말하는건가요? 이 경우 예시코드는 저장과 관련된 내용이 없어서 무슨문제인지 알수가 없습니다. 혹은 조회한 결과를 결과셋(userinfo)으로 만드는 것을 말하는건가요? 허대영(소프트웨어융합대학) 2016.6.18 08:42

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)