🎯 문제상황
오늘 새로운 API를 만들고 postman으로 request를 보내 봤는데 다음과 같은 에러가 발생했다.
Record Entity에 대한 metadata를 찾을 수 없다는 에러가 발생했다.
✏️metadata란? : data가 어떠한 속성을 가지는지 데이터에 정보를 담고 있는 데이터를 의미한다.
🎯 문제이해
오류 코드를 읽어보니
record.repository.ts 파일의 datasource가 Record Entity의 metadata를 가지고 와야 하는데 못 가지고 오는 것으로 이해했다.
구글링을 통해 찾아보니 TypeORM 이 Entity의 metadata를 가지고 오지 못하는 경우에 발생할 수 있는 에러인 것을 알게 됐다.
🎯 문제해결
문제 해결읠 위해 TypeORM config 파일에 자동으로 Entity를 읽어오는 옵션을 설정해 주었다.
export const typeOrmConfig: TypeOrmModuleOptions = {
type: dbConfig.type,
host: process.env.RDS_HOSTNAME || dbConfig.host,
port: process.env.RDS_PORT || dbConfig.port,
username: process.env.RDS_USERNAME || dbConfig.username,
password: process.env.RDS_PASSWORD || dbConfig.password,
database: process.env.RDS_DATABASE || dbConfig.database,
entities: [__dirname + '/../entity/*.entity.{js,ts}'],
synchronize: true,
// 이 아래 부분에 autoLoadEntities 설정을 추가해 주면 자동으로 엔티티 정보를 가지고 온다 !
autoLoadEntities:true
};
위의 옵션을 추가해 주니 정상적으로 코드가 동작함을 확인했다 !
'Node.js > Nest.js' 카테고리의 다른 글
[Nest.js] Custom Repository Unit Testing (TypeORM) (0) | 2023.06.10 |
---|---|
[Nest.js] Entity와 DTO의 차이점 - [Error] unnamed portal parameter (0) | 2023.06.06 |
[Nest.js] ERROR [ExceptionsHandler] invalid input syntax for type integer (0) | 2023.06.03 |
[Nest.js] PartialType을 이용한 UpdateDto 만들기 (0) | 2023.06.01 |
[Nest.js] Nest.js의 특징과 철학 (0) | 2023.05.30 |