inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

10-06 1:1 관계 등록 API

productsSalesLocation.service create method

해결된 질문

206

박호정

작성한 질문수 43

0

 

create({productSalesLocation}): Promise<ProductSalesLocation>{
  return this.productsSalesLocationsRepository.save({...productSalesLocation});
}

강의 중 위와 같은 코드를 작성해주셨는데,  create의 parameter type은 ProductSalesLocation(Entity)의 타입에서 id만 제외하고 사용하는 형태로 작성하는 것이 맞을까요?

javascript node.js express docker tdd rest-api nestjs

답변 1

0

노원두

안녕하세요! 호정님!

Omit 타입을 활용하여 id를 제외하셔서 타입을 만드는 것을 생각하고 계신 것 같아요!
접근 방법은 좋은 것 같아요! 하나만 첨언을 드리면, 추후에 프로젝트가 복잡해지다보면 id말고 제외해야하는 요소들이 많이 생겨나게 됩니다.

createdAt, updatedAt, 등과 같은 데이터를 포함하여 위 타입에서는 제외되어야하나, DB 컬럼으로는 필요한 것들이 대상이 될 수 있겠네요!
문제는, 이러한 컬럼이 Entity에 추가되었을 때, Omit으로 적용된 모든 타입들에는 자동으로 해당 컬럼이 반영되기 때문에 예기치 못한 에러를 마주하실 수 있어요!

따라서, 이러한 상황을 고려하신다면 Pick 타입으로 명확히 입력될 컬럼만 선택하시는 것이 향후 유지보수에 좋을 것 같네요!^^

1

박호정

설명 감사합니다 ~!

윈도우에서 Node js를 설치하고 싶어요

0

7

0

그래프 ql 문서 사용할때 느낌표 남는거 어떻게 없애나요?

0

102

2

강의 전체 소스 코드를 받고싶습니다.

0

92

2

fontawesome 사용 문의

0

96

2

소스 코드 부탁드립니다~

0

99

2

깃 레포지터리 소스

0

96

2

커리큘럼12.css 정렬 에 나오는 과제 정답알고싶어요

0

81

2

10-01 Entity TypeOrmModule.forRoot 에 entities

0

101

3

강의 버전관련 문의입니다

0

111

2

Ubuntu 설치 관련

0

73

1

schema.gql 질문 드립니다.

0

63

1

서버 재실행시 Many to Many

0

119

3

input 관련 문의

0

97

2

Rest API 보다는 graphql이 주된 내용인데

0

145

2

강의 전체 소스코드 받을수있을까요?

0

170

1

도커볼륨 마운트 관련

0

135

2

findOne 타입스크립트오류

0

116

1

http => htrtps 호출 인증서 신뢰 오류

0

374

1

self-signed certificate in certificate chain 에러 발생

0

439

1

mongoose 설치 오류

0

149

1

특정 API, 특정 IP 허용 (단일경로에 CORS 활성화)

0

300

2

08-06

0

188

3

구조랑 패턴 관련해서 질문

0

134

2

mydocker

0

135

2