Javasciprt/NestJS

[NestJS] TypeORM naming strategy

씬프 2023. 12. 26. 12:34
반응형

보통 Typescript로 코드를 작성할 땐, camelCase로 이름 규칙을 작성하는데,

Database에선 snake_case로 이름 규칙을 작성하게 된다.

기존에는 TypeORM 데코레이터에서 name으로 이름을 작성했다.


@Entity('users')

export class UserEntity {

  @Column({ name: 'last\_name' })

  lastName: string;

}

코드도 길어지고, 가끔 이름을 빼먹는 경우도 발생하고 문제가 되었다.

찾아보니 typeorm-naming-strategies라는 라이브러리가 있었고, 조금 더 코드를 단순화 할 수 있었다.

사용

  1. 설치
npm i typeorm-naming-strategies
  1. typeorm module에 적용
// typeorm module settings
{
  ... // DB 관련 설정들, database, port, username, password 등등
  namingStrategy: new SnakeNamingStrategy()
}