Сейчас у меня есть 3 контроллера, 3 сущности, 3 сервиса и 3 модуля.
Дело сейчас у меня обстоит так, что в одном из сервисом мне нужно обратиться к другому соответственно, но nest сказал что-то вроде: ты забыл подключить ещё и энтити, ведь во втором его нет.
В итоговом виде это всё выглядит так, будто один за одним подключаются сервисы и сущности в модулях, где в конечном модуле подключены уже почти все сервисы, из-за некоторого пере использования.
Вот сам пример:
PurchaseModule.ts
import { Module } from '@nestjs/common';
import { PurchaseController } from './PurchaseController';
import { PurchaseService } from './PurchaseService';
import { TypeOrmModule } from '@nestjs/typeorm';
import { paymentsEntity } from './purchasedEntity';
import { userEntity } from '../userAuthorization/userEntity';
import { userService } from '../userAuthorization/user.service';
import { ConfigModule } from '@nestjs/config';
import { ForgotEntity } from '../userAuthorization/forgotEntity';
@Module({
imports: [
ConfigModule.forRoot(),
TypeOrmModule.forFeature([paymentsEntity, userEntity, ForgotEntity]),
],
exports: [TypeOrmModule],
controllers:[PurchaseController],
providers: [PurchaseService, userService]
})
export class PurchaseModule{}
userModule.ts
import {Module} from '@nestjs/common';
import { userController } from './user.controller';
import { userService } from './user.service';
import { TypeOrmModule } from '@nestjs/typeorm';
import { userEntity } from './userEntity';
import { ForgotEntity } from './forgotEntity';
@Module({
imports: [
TypeOrmModule.forFeature([userEntity, ForgotEntity]),
],
exports: [TypeOrmModule],
controllers: [userController],
providers: [userService]
})
export class userModule{}
Здесь наглядно видно, как я тащу из модуля к модулю энтити ForgotEntity, который используется только в userService.
Если я удалю его из PurchaseModule, то Nest скажет мне, что этот энтити используется в userService, а значит, он должен быть и здесь!
Это нормальный подход или как делать иначе?