웹개발 Q&A


웹개발 Q&A
웹 개발과 관련된 질문과 답을 쓰고 공유할 수 있는 곳입니다.
노드 데이터베이스 ch6 부분 문의 드립니다.
노드맨
이미지 슬라이더 보기
안녕하세요? 요즘 Do it! Node.js로 열공중에 있습니다.
공부중 문의가 있어 글 올립니다.

DatabaseExample -> app5.js 에서 사용자 인증하는 함수 authUser () 부분중 app5.js 파일에서 399번째 보면
var user = new UserModel({id:id});
var authenticated = user.authenticate(password, results[0]._doc.salt, results[0]._doc.hashed_password);
이렇게 되어 있는데요?

몽구스 스키마에서 메소드 사용법을 알려주실려고 한 부분인거 같은데
var user = new UserModel({id:id}); 이렇게 인스턴스를 생성한건 오직 아래 부분
user.authenticate() 이 메소드를 불러오기 위함인거 같은데
authenticate()를 스태틱으로 만들면 생성자가 필요 없을 듯 해서요.
그럼 바로 인스턴스 생성 없이 바로 UserModel.authenticate() 이렇게 사용 하면 될 거 같은데요.
var user = new UserModel({id:id});  이것을 꼭 생성해야 하는 이유가 있는지 궁금합니다.

2017-04-03 00:29:10
175.204.91.***
덧글 1개 | 태그 0개
태그입력
쉽표(,)구분으로 한번에 여러 태그를 입력할수 있습니다
마이크
네, 맞습니다.

질문하신 것처럼 static으로 추가한 메소드는 모델 객체에서 바로 호출 가능합니다.
따라서 일반적으로 모델 객체에서 바로 호출합니다.

책에는 약간씩 다른 유형의 코드를 집어넣기도 하는데, 위의 코드는 오히려 혼동될 수 있을 것 같아 수정되는 것이 나을 것 같습니다.


^^

124.49.8.*** 2017-04-03 00:29:10
이름 비밀번호