RepositoryNotFoundError: No repository for "BoardRepository" was found. 에러 해결하기

wonjun.Aden·2022년 10월 7일
8

nestJs

목록 보기
1/5
post-thumbnail

강의를 듣던 도중 repository 에러로 반나절을 날려먹었다.
삽질의 연속이었다.
버전을 낮춰보기도 하고 강의의 소스코드를 비교해서 틀린그림찾기도 엄청 했었다.
하지만 해결하지 못했었다. 찾던 도중 nestjs doc의 database Typeorm 편을 찾게 되었다.
역시 doc부터 먼저 찾아 봐야한다는것을 다시 상기시키게 되었다.
우선 나의 에러는 아래와 같았다.

RepositoryNotFoundError: No repository for "BoardRepository" was found. Looks like this entity is not registered in current "default" connection?
    at RepositoryNotFoundError.TypeORMError [as constructor] (/Users/wonjun/develop/workspace/nestjs-test/src/error/TypeORMError.ts:7:9)
    at new RepositoryNotFoundError (/Users/wonjun/develop/workspace/nestjs-test/src/error/RepositoryNotFoundError.ts:10:9)
    at EntityManager.getRepository (/Users/wonjun/develop/workspace/nestjs-test/src/entity-manager/EntityManager.ts:964:19)
    at Connection.getRepository (/Users/wonjun/develop/workspace/nestjs-test/src/connection/Connection.ts:354:29)
    at InstanceWrapper.useFactory [as metatype] (/Users/wonjun/develop/workspace/nestjs-test/node_modules/@nestjs/typeorm/dist/typeorm.providers.js:16:34)
    at Injector.instantiateClass (/Users/wonjun/develop/workspace/nestjs-test/node_modules/@nestjs/core/injector/injector.js:343:55)
    at callback (/Users/wonjun/develop/workspace/nestjs-test/node_modules/@nestjs/core/injector/injector.js:53:45)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at Injector.resolveConstructorParams (/Users/wonjun/develop/workspace/nestjs-test/node_modules/@nestjs/core/injector/injector.js:132:24)
    at Injector.loadInstance (/Users/wonjun/develop/workspace/nestjs-test/node_modules/@nestjs/core/injector/injector.js:57:13)

열받았다.

해결방법은 아래와 같다.
boards.module.ts

import 부분의 forfeature 안에를 BoardRepository가 아닌 Board(Entity)로 변경해주고

boards.service.ts

@InjectRepository 어노테이션을 BoardRepository에서 Board로 변경해주면 되는 것이었다....

Doc을 보면 너무나도 쉽게 해결할 수 있던 것을 반나절을 삽질했다. 이 해결방법이 많은 사람들에게 도움이 되길 기도하며...
남은 강의 더 들으러 간다...

참고자료:
https://docs.nestjs.com/techniques/database

profile
아프리카의 BackEnd Developer 장원준입니다.

6개의 댓글

comment-user-thumbnail
2022년 10월 7일

이거 유튜브 강의 댓글에도 남기면 좋을 것 같네요ㅎ
강의 댓글에도 typeorm에 관한 버젼 얘기가 있어요.

답글 달기
comment-user-thumbnail
2022년 10월 9일

진짜 님 덕분에 살았습니다 어떻게 이렇게 한글로 귀한 정보를 남겨주셨는지 정말 감사 또 감사드립니다. 이게 최신버젼이라서 예전과 다른지 모르겠네요 정말 감사합니다 진짜 감사합니다 너무 감사합니다 감사 또 감사합니다.
하나님이 당신의 나눔을 보시고 사랑으로 함께 하실겁니다 감사합니다!!!

1개의 답글
comment-user-thumbnail
2022년 12월 27일

정말 적게 일하시고 돈은 많이 많이 버시고 사는 동안 아픈 곳 없이 건강하게 오래오래 행복하게 사세요...

1개의 답글
comment-user-thumbnail
2023년 1월 27일

한참 헤메고 있었는데 감사합니다 ㅠㅠ 선생님

답글 달기