NestJs新手,按照https://docs.nestjs.com/techniques/database配置后 无法找出我的代码的问题。
错误:Nest 无法解析 AdminRepository 的依赖关系(?)。请确保索引 [0] 处的参数 Connection 在 TypeOrmModule 上下文中可用。
管理模块:
import { Module } from '@nestjs/common';
import {Admin} from "../entities/Admin";
import {TypeOrmModule} from '@nestjs/typeorm';
import {AdminService} from "./admin.service";
import {AdminController} from "./admin.controller";
@Module({
imports:[TypeOrmModule.forFeature([Admin])],
exports: [TypeOrmModule],
providers: [AdminService],
controllers: [AdminController]
})
export class AdminModule {}
Run Code Online (Sandbox Code Playgroud)
管理员控制器:
import { Controller } from '@nestjs/common';
@Controller('admin')
export class AdminController {}
Run Code Online (Sandbox Code Playgroud)
管理服务:
import { Injectable } from '@nestjs/common';
import { Repository } from 'typeorm';
import { InjectRepository } from '@nestjs/typeorm';
import { Admin } from '../entities/Admin';
@Injectable()
export class AdminService {
constructor(
@InjectRepository(Admin)
private readonly adminRepository:Repository<Admin>
) {}
}
Run Code Online (Sandbox Code Playgroud)
应用程序模块:
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { LoginController } from './login/login.controller';
import { RegisterController } from './register/register.controller';
import { ContactController } from './contact/contact.controller';
import { AppService } from './app.service';
import { LoginService } from './login/login.service';
import { ContactService } from './contact/contact.service';
import { RegisterService } from './register/register.service';
import { AdminModule } from './admin/admin.module';
@Module({
imports: [AdminModule],
controllers: [AppController, LoginController, RegisterController, ContactController],
providers: [AppService, LoginService, ContactService, RegisterService],
})
export class AppModule {}
Run Code Online (Sandbox Code Playgroud)
小智 9
您必须在应用程序模块中导入 typeorm 配置。参考下面的代码。
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { LoginController } from './login/login.controller';
import { RegisterController } from './register/register.controller';
import { ContactController } from './contact/contact.controller';
import { AppService } from './app.service';
import { LoginService } from './login/login.service';
import { ContactService } from './contact/contact.service';
import { RegisterService } from './register/register.service';
import { AdminModule } from './admin/admin.module';
import { TypeOrmModule } from '@nestjs/typeorm';
@Module({
imports: [TypeOrmModule.forRoot(),AdminModule],
controllers: [AppController, LoginController, RegisterController, ContactController],
providers: [AppService, LoginService, ContactService, RegisterService],
})
export class AppModule {}
Run Code Online (Sandbox Code Playgroud)
看起来您缺少TypeOrmModule.forRoot()/forRootAsync()
设置AppModule
与数据库的初始连接的内容。确保将其添加到imports
阵列中(具有必要的配置),然后您就可以开始了。