inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

Many to Many Relationship 구현해보기

many to many relations update를 할 경우 질문 드립니다.

해결된 질문

592

dhj100

작성한 질문수 19

1

안녕하세요. 강의 정말 잘 듣고 있습니다.

먼저 좋은 강의 감사드립니다.

강의를 듣고 복습을 하던 중에, 기존 tag가 relation된 post를 찾아서 새로운 tag를 추가하는 API는 어떤 식으로 짜야 하는지 궁금해서 질문 드립니다.

 

 

javascript typescript rest-api nestjs backend

답변 2

0

dhj100

감사합니다. 참고해서 작성해보겠습니다!

0

코드팩토리

안녕하세요!

Post에 Relation을 추가하는법 말씀하시는걸까요?

아래 링크와 같은 코드 말씀이신지 확인 부탁드립니다.

https://typeorm.io/many-to-many-relations#saving-many-to-many-relations

감사합니다!

0

dhj100

아 현재 post와 tag, 두 DB 간 many to many 관계를 부여한 상태인데요.

다음과 같은 상황에서 어떻게 update하는 코드를 짜야하는지 질문 드렸습니다.

 

  1. 현재 저장되어있는 post db 일부 json 형태
    {
    id : 1,
    name : "post 1",
    tags : [ "tag1" , "tag2"]


    }

    2. 위 id 1번 post 데이터의 tags를 update하는 API를 작성하고자 합니다.
    제가 구현하려고하는 updateAPI는 id , 추가하고자하는 tag의 정보를 input으로 받으려고 합니다. 예를 들어 id는 1, tag 정보는 tag 3을 받은 경우 아래와 같이 post가 수정되었으면 합니다.


    3. update한 후의 post 형태
    {
    id : 1,
    name : "post 1",
    tags : [ "tag1" , "tag2", "tag3"]


    }

    감사합니다.

2

코드팩토리

보여드린 코드대로 태그들을 불러온 다음 태그를 추가해도 상관 없습니다.

또는 Many to Many 관계 테이블을 객체화해서 해당 테이블을 자유롭게 사용하셔도 됩니다.

post <-> post_to_tag <-> tag

이렇게 테이블이 있다고 가정 했을때 post_to_tag 테이블도 typeorm으로 ORM화 할 수 있습니다. 그렇다면 ORM만 사용해도 원하는대로 relation 생성, 수정, 삭제가 가능합니다.

마지막으로 raw query 옵션은 항상 열려있습니다. ORM이라고해서 불가피한 상황에 raw query를 사용하는게 잘못된게 아닙니다.

감사합니다!

cascade 질문

0

40

1

@types/bcrypt 설치과정이 누락된것같습니다.

0

48

1

process.env port key 에러

0

47

1

추상화

0

50

1

[공유] DTO optional 필드가 undefined로 잡혀 TypeORM 조건이 깨지는 현상

0

101

2

where 키워드가 들어가는 메서드와 아닌 메서드

0

57

1

BearerTokenGuard에서 db를 조회해서 유저 정보를 불러오는 이유?

0

72

1

app.controller app.service 는 지워도되나요?

0

70

1

@JoinColumn을 쓰는 경우와 안쓰는 경우의 차이

0

79

1

포트 3000에서 listen하는 곳까지 넘어가지 않습니다.

0

67

1

PickType 사용 시 `as const`를 꼭 사용해야 하나요?

0

102

2

socket connect 오류

0

97

2

강의를 들으면서 궁금한 점

0

97

2

DELETE 요청의 반환값은 어떤 기준으로 결정하는 게 좋을까요?

0

60

2

커리큘럼 질문

0

100

2

put 요청은 언제

0

90

3

typeorm VS prisma

0

351

2

142 강의 > 4:00 > 포스트멘 활용 관련 질문 드립니다.

0

77

2

User 데코레이터 버그 수정 전달드립니다.

0

67

1

git 주소 부탁드립니다.

0

113

2

nest g resource 명령어 에러

0

99

2

로그인 엔드포인트 관련 질문

0

85

2

yarn으로 express 다운 후 node 2_server.js 실행 안되는 경우

0

148

3

"흔히 사용되는 메서드" 강의 관련 질문입니다~

0

95

2