작성
·
134
0
책에 나와있는 예제입니다.
여기서 user.getComments(); 이부분에서
getComments() 이게 조회하는 메서드라는 것은 이해했습니다.
User과 관계를 맺은 모델인 Comment모델에서 조회하는 것이겠지요.
문제는 그 앞에있는 user. 이 무슨 역할인지 모르겠습니다.
const user = await User.findOne({}); 조건에 맞는 객체를 조회했다는 것은 이해했지만
그것과 getComments() 가 무슨 상관관계가 있는것인가요?
또 그외의
이 코드는 9장 노드버드의 게시글 업로드 라우터의 일부분입니다
이 코드에선 add메서드를 사용했는데
result.map(r => r[0]) 를 Hashtag모델에 추가하는 것은 알겠지만
MySQL로 hashtags 테이블을 조회해보면
해당 데이터가 없습니다.
이 데이터는
여기서 생성되었습니다.
혹시 Post와 Hashtag가 다대다 관계이니 중간테이블에 저장했나 싶어 posthashtag를 조회해봐도
해당 데이터가 없습니다.
그렇다면 add, remove, set메서드를 사용했을 때 데이터는 어디에 저장되는 것인가요?
시퀄라이저 공식문서도 훝어봤지만 제가 원하는 정보가 안나와서 질문합니다.
답변 1
0
user.getComments에서 user는 방금 조회한 사용자죠. 사용자의 댓글들을 가져와라라는 뜻입니다. 앞에 user.이 없으면 누구의 댓글을 가져오나요?
posthashtag 테이블에 태그 정보들이 들어있는 겁니다. postId랑 hashtagId가 연결되어 있잖아요.
태그 정보가 외래키안에 들어있는 것인가요?
이 문장이 posthashtag모델의 조건에 맞는 post의 hashtagId안에 해당 데이터가 추가된다고 이해해도 되나요?
또한 관계메서드는 as를 쓰지 않으면 모델 명을 쓰는데 그렇다면 post.addposthashtag가 되어야 하는 것이 아닌가요?