왠만하면 최신버전으로 진행하느라
@nestjs/typeorm@10.0.0
typeorm@0.3.x
로 진행중에 만난 오류입니다.
해당 강좌 커뮤니티에 검색해보면 나오지만,
typeorm의 버전이 0.2.x와 0.3.x의 사용법 차이로 생기는 문제입니다.
--해결법--
npm i typeorm@0.2.45
를 통해 typeorm의 버전을 낮춰 줍니다.(@nest/typeorm은 그냥 높은 버전 썼습니다)
board.service.ts
1-1
constructor(
@InjectRepository(BoardRepository)
private boardRepository:BoardRepository
){}
-> InjectRepository를 Repository에서 Entity로 변경
constructor(
@InjectRepository(Board)
private boardRepository:BoardRepository
){}
1-2
const found = await this.boardRepository.findOneBy({id})
->typeorm0.3의 문법을 0.2의 문법으로 변경
const found = await this.boardRepository.findOne(id)
board.module.ts
@Module({
imports: [
TypeOrmModule.forFeature([BoardRepository])
],
controllers: [BoardsController],
providers: [BoardsService]
})
->forFeature()의 Repository를 Entity로 변경
@Module({
imports: [
TypeOrmModule.forFeature([Board])
],
controllers: [BoardsController],
providers: [BoardsService]
})
이렇게 변경하면 잘 되는거 같습니다.
이대로 강의 진행해보고 typeorm0.3 진행해봐야겠네요~