-
카테고리
-
세부 분야
풀스택
-
해결 여부
미해결
api추가 질문입니다
22.05.26 05:02 작성 조회수 99
0
api 추가 질문입니다.
이 코드에서 :hashtag는 인코드 되어서 request함수에 넣었습니다.
request함수는 헤더의 authorization에 토큰을 넣어서 이 라우터에 요청합니다.
그렇다면 이 코드의 :title 속성은 인코드된 문자열이지 않나요?
Hashtag모델에 인코드된 문자열이 저장되는 것도 아니던데 왜 인코드된 문자열을 다시 디코드하지 않나요?
또 Post에 있는 hashtag를 가져와 posts에 넣어서 json형식으로 출력했더니
이런 형태의 데이터가 나왔는데
Post모델에서 조건에 맞는 hashtag를 가져온것은 이해 했습니다.
그러나 PostHashtag테이블과 UserId컬럼은 왜 가져온것인가요?
혹시 관계 메서드 add set remove get에 대해 정확히 어떠한 인과관계가 나타는지 설명해주실수 있나요?
대충 느낌은 오지만 긴가민가 합니다 ㅜㅜ
답변을 작성해보세요.
0
welco
2022.05.26
const hashtag = await Hashtag.findOne({ where: { title: req.params.title } });
위의 함수를 사용할 때 저장소에 있는 id 등등 다른것도 같이 posts에 담겨 응답된것 같습니다.
저같은 경우는 class-transformer 라는 라이브러리를 이용해서 필요없는 필드를 제거합니다. user의 password 같은 민감한 필드값은 DB에서 같이 끌고와서 해당 라이브러리를 이용해서 제외시킵니다.
다른 해결법으로는 sql 구문을 직접 사용하면 깔끔할것 같습니다. (SELECT)
답변 1