인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

서정원님의 프로필 이미지
서정원

작성한 질문수

따라하며 배우는 NestJS

No repository for 질문

작성

·

456

0

RepositoryNotFoundError: No repository for "BoardRepository" was found. Looks like this entity is not registered in current "default" connection?

at RepositoryNotFoundError.TypeORMError [as constructor] (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\src\error\TypeORMError.ts:7:9)

at new RepositoryNotFoundError (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\src\error\RepositoryNotFoundError.ts:10:9)

at EntityManager.getRepository (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\src\entity-manager\EntityManager.ts:964:19)

at Connection.getRepository (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\src\connection\Connection.ts:354:29)

at InstanceWrapper.useFactory [as metatype] (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\node_modules\@nestjs\typeorm\dist\typeorm.providers.js:16:34)

at Injector.instantiateClass (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\node_modules\@nestjs\core\injector\injector.js:368:55)

at callback (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\node_modules\@nestjs\core\injector\injector.js:65:45)

at processTicksAndRejections (node:internal/process/task_queues:95:5)

at Injector.resolveConstructorParams (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\node_modules\@nestjs\core\injector\injector.js:144:24)

at Injector.loadInstance (C:\Users\jungw\OneDrive\바탕 화면\nestjs-board-app\node_modules\@nestjs\core\injector\injector.js:70:13)

검색을 여러번 해 봤더니 typeorm을 0.2버전으로 바꾸라고 하셔서 npm install typeorm@0.2.45 --save로 했는데 다운로드 이후에 npm show typeorm version을 했을 때 0.3.17버전이 나오더라구요 혹시 버전이 바뀌지 않았던 것인지 아니면 그냥 다른 이유때문에 되지 않는것인지 궁금하네요...

답변 1

0

안녕하세요, 인프런 AI 인턴이에요.

제가 알려드릴 내용은 NestJS와 TypeORM 관련된 내용이에요.
에러 메시지로 보아 “BoardRepository”라는 엔티티가 현재 “default” 연결에 등록되어 있지 않아서 발생한 문제인 것 같아요.

이 에러는 두 가지 가능성이 있는데요.
첫 번째로, “BoardRepository” 엔티티가 정확하게 등록되지 않은 경우입니다. NestJS에서 저장소를 사용할 때는 해당 저장소를 모듈에 등록해야 해요.
모듈에 등록하는 방법은 보통 @Module() 데코레이터 내에 “providers” 배열에 Repository를 추가하는 식으로 처리합니다.
아마도 해당 설정을 빠뜨리신 것 같은데, 해당 모듈에 저장소가 등록되어 있는지 확인하시기 바랍니다.

두 번째로, “default” 연결이 올바르게 설정되지 않은 경우입니다. 일반적으로 TypeORM을 사용할 때는 여러 연결을 사용할 수 있는데, 현재 “default”라는 이름의 연결이 등록되지 않았거나 올바르게 설정되지 않았을 가능성이 있어요.
TypeORM 설정 파일에서 “default” 연결을 정확하게 설정해주셔야 해요.
또한, 저장소를 등록하는 모듈에서도 “default” 연결을 사용하도록 설정되어 있는지 확인하시기 바랍니다.

위의 두 가지 가능성을 확인하시고 수정해보세요. 문제가 해결되지 않는다면, 더 많은 정보를 공유해주시기 바랍니다. 예를 들어, 사용 중인 NestJS 및 TypeORM 버전, 해당 모듈의 코드 등을 알려주세요. 그럼 더 자세한 도움을 드릴 수 있을 것 같아요.

문제가 해결되기를 바라며, 추가로 궁금한 점이 있다면 언제든지 물어보세요. 좋은 하루 되세요!

서정원님의 프로필 이미지
서정원

작성한 질문수

질문하기