inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

typeorm 쿼리빌더

createQueryBuilder

499

작성자 없음

작성한 질문수 0

0

아직 TypeORM 가 조금 헤깔려서 질문 남깁니다. ㅠ 

board.id = comments.boardId 을 join 걸어야하는데, 

erd 가 이렇게 구성되어있구요 .

Board entity 

Comments entity 

이렇게 구성되어져있습니다 ! 

boardId 를 가지고 board 의 작성 내용과 그밑에 comments 들을 들고올려고 하는데요 .

어떻게 작성 할수있을까요?? ^^ ; ㅎ 

express nodejs NestJS TypeORM

답변 2

0

SJ

1 https://typeorm.io/#/select-query-builder

위의 사이트에서 해당하는 글을 읽어봤는데여 .

3번째 인수에 조건을  거는것과 , where 문의 차이엔 어떤 차이가 있을까영 ?

2. 인자값에 타입지정은 자주 하셨지만 return 타입엔 비교적 타입추론을 자주 하셨더라구요 . ㅎ 특별한 이유가 있을까요 ? ㅎ 

0

제로초(조현영)

1. 3번째 인수에 조건을 거는 것은 이미 join한 후에 다시 조건을 걸어 필터링하는 것이라고 보시면 됩니다. 그래서 board에 comment를 조인한 후 boardId로 필터링하는 게 의미가 없습니다. comment의 boardid는 전부다 같은 boardId거든요.

2. service 인자는 타입추론이 아예 안 됩니다. return은 타입추론이 됩니다.

0

SJ

친절한 답변 감사합니다 :) 

0

제로초(조현영)

데이터까지 가져오려면 innerJoinAndSelect를 쓰셔야 합니다.

innerJoinAndSelect('board.BoardToComments', 'commentsOfBoard')

3번째 인수는 조건인데 현재 상황에서 필터링하는 게 없으므로 따로 조건을 넣을 필요는 없습니다.

0

SJ

아아 해당하는 만약 board 에 대한 comments 들과 board 데이터를 가져와야한다하면

그 해당하는 board 를 알기위해 3번째 인수에 조건을 걸어줘야하죠?

1. 제로초님이 네이밍 구성을 길게하라고해서 길게 적을려고 하는데 저기서 네이밍이라던지 좀더 수정해야될게 뭐가있을까요 ?

2. async 에서 return 타입은 무엇으로 하시나여 ???

0

제로초(조현영)

아뇨. boardId 조건은 where에 적는 겁니다. commentsOfBoard의 BoardId는 전부 해당 board의 아이디라서 의미가 없습니다.

저라면 BoardToComments 대신에 그냥 Comments 했을 것 같습니다(Entity쪽 수정) 그래야 board.Comments로 자연스럽습니다.

commentsOfBoard도 그냥 comments만 쓰고요. 읽을 때 중복없이 자연스러운게 좋습니다.

return 타입은 알아서 추론돼서 직접 적으실 필요 없습니다(getManyAndCount의 리턴타입).

강의자료는 어디서 다운받나요?

0

141

4

질문 있습니다.

0

315

3

코드 편집기 확장 프로그램

0

220

2

(질문)비밀 저장소에 접근하기 위한 인증 정보는 로컬 .env에 저장하는지?

0

161

2

(질문)외부 저장소를 통한 환경변수 불러오기 비동기 질문

0

177

3

로그인을 해도 LoggedInGuard쪽에서 false값이 나옵니다.

0

161

2

로그인방법이 고민됩니다.

0

197

2

yarn seed 명령어 실행 시 데이터 삽입 안됨

0

305

4

yarn run db:create 시에 발생하는 데코레이터 오류

0

247

2

npm run db:create 시에 발생하는 decorating 오류

0

245

2

RxJS 디버깅 질문 있습니다.

0

198

3

CacheManager에 대해 질문 있습니다.

0

184

2

로깅은 어떻게 하는게 효율적일까요?

0

237

1

CORS 질문 있습니다.

0

425

2

쿠키 옵션에 대해서 질문 있습니다.

0

188

2

로그아웃 요청이 403 forbidden 에러가 나는데 왜그런걸까요??

0

458

1

401 unauthorized문제

0

304

1

가드의 장점에 대해서 질문이 있습니다.

0

232

1

로그 관리에 대해 질문 있습니다.

0

254

2

CORS 에러 질문 있습니다.

0

328

2

배포 환경 DB 연결 질문 있습니다.

0

417

2

socket io 미 연결 문제 (nest & flutter)

1

1166

3

no elements in sequence 에러 관해서 질문이 있습니다.

0

462

1

start:dev-backup으로 돌리면 핫 리로딩이 되요 정상인가요?

0

323

1