inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

10-06 1:1 관계 등록 API

productsSalesLocation.service create method

해결된 질문

203

박호정

작성한 질문수 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

박호정

설명 감사합니다 ~!

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

0

84

2

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

0

76

2

fontawesome 사용 문의

0

79

2

소스 코드 부탁드립니다~

0

85

2

깃 레포지터리 소스

0

85

2

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

0

73

2

10-01 Entity TypeOrmModule.forRoot 에 entities

0

88

3

강의 버전관련 문의입니다

0

103

2

Ubuntu 설치 관련

0

61

1

schema.gql 질문 드립니다.

0

51

1

서버 재실행시 Many to Many

0

102

3

input 관련 문의

0

90

2

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

0

131

2

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

0

156

1

도커볼륨 마운트 관련

0

127

2

findOne 타입스크립트오류

0

109

1

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

0

353

1

self-signed certificate in certificate chain 에러 발생

0

417

1

mongoose 설치 오류

0

142

1

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

0

283

2

08-06

0

180

3

구조랑 패턴 관련해서 질문

0

125

2

mydocker

0

128

2

coolsms statuscode 2000 인데 전송안돼는 경우 확인.

0

156

1