인프런 커뮤니티 질문&답변

mins님의 프로필 이미지
mins

작성한 질문수

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

Column Property 정리하기

TypeORM-Column annotation 강의 중 UserModel typing 관련 질문

해결된 질문

작성

·

138

0

안녕하세요. UserModel 엔티티 작성할 때, 아래와 같이 타입을 엉뚱하게 적어도 컬럼 값의 타입이 제대로 들어가는 문제로 질문드립니다.

https://orkhan.gitbook.io/typeorm/docs/entities#primary-columns

해당 Docs를 보니 어노테이션에 타입이 정해져 있어 그런거 같은데, 아래 코드가 타입 오류가 안나는게 맞는건가요?

  @PrimaryGeneratedColumn()
  id: string;

  @Column()
  @Generated('uuid')
  additionalId: number;

답변 1

1

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요!

primaryGeneratedColumn은 number 타입이어야하는데 string 타입으로 인식시켜도 에러가 안나는게 맞냐는 말씀이실까요?

typescript가 어떤 역할을 하는지 이해를 하셔야합니다.

typescript는 빌드타임 체크 툴이지 런타임 체크 툴이 아닙니다.

더군다나 PrimaryGeneratedColumn은 build 타임 타입 체킹 기능이 없습니다.

그러니 string 타입을 입력하더라도 에러가 나지 않습니다.

uuid도 마찬가지입니다.

제 TS 강의에서 Reflection 섹션을 복습해보시면 쉽게 이해 할 수 있습니다.

감사합니다!

mins님의 프로필 이미지
mins

작성한 질문수

질문하기