Nestjs - Typeorm Repository 사용하기
728x90
repository import
restaurants 라는 App 안에서 resturants.module.ts
에서 entities 안에 정의된 모델을 import 해야 합니다.
TypeOrmModule.forFeature() 안에 배열 형식으로 entities 안에 정의된 모델을 import 합니다.
DB에 접근할 수 있는 service 만들기
restaurants/restaurants.service.ts
파일을 만든뒤 다음과 같이 작성합니다.
그런다음 restaurants.resolver.ts
로 이동하여
constructor(private readonly restaurantService: ResaurantService) {}
를 추가합니다.
마지막으로 restaurants.module.ts
에서
providers 에 서비스를 추가해주면 에러없이 서버가 잘 돌아갑니다.
restaurant.service.ts
에서 생성자에 InjectRepository 를 합니다.
Repository 에서 find method는 비동기 함수이기 때문에 return type을 Promise로 줘야합니다.
이런 식으로 TypeORM(Entity)을 graphQL의 ObjectType 옆에 쓰기만 하면 DB에 model을 생성하고 자동으로 graphQL에 스키마를 작성 할수 있고 graphQL query를 사용할 수 있는 resolver도 사용할 수 있습니다.
모듈에서 서비스와 resolver 를 import 하고 resolver 에서 서비스를 호출 하고 서비스에서 database 를 접근합니다.
728x90
'Side > uber-eats' 카테고리의 다른 글
Nestjs , Typeorm 에서 Hasing passwords (0) | 2021.06.05 |
---|---|
Nestjs - User model (0) | 2021.06.01 |
TypeORM setup 과 Nestjs Config (0) | 2021.05.23 |
NestJs Validating ArgsTypes (0) | 2021.05.23 |
Nestjs - InputTypes and ArgumentTypes (0) | 2021.05.22 |
댓글
이 글 공유하기
다른 글
-
Nestjs , Typeorm 에서 Hasing passwords
Nestjs , Typeorm 에서 Hasing passwords
2021.06.05 -
Nestjs - User model
Nestjs - User model
2021.06.01 -
TypeORM setup 과 Nestjs Config
TypeORM setup 과 Nestjs Config
2021.05.23 -
NestJs Validating ArgsTypes
NestJs Validating ArgsTypes
2021.05.23