import { Module } from '@nestjs/common'; import { ConfigModule, ConfigService } from '@nestjs/config'; import { TypeOrmModule } from '@nestjs/typeorm'; import { HealthModule } from './health/health.module'; import { FileModule } from './file/file.module'; @Module({ imports: [ // 配置模块 ConfigModule.forRoot({ isGlobal: true, envFilePath: ['.env.local', '.env'], }), // 数据库连接 TypeOrmModule.forRootAsync({ imports: [ConfigModule], inject: [ConfigService], useFactory: (config: ConfigService) => ({ type: 'postgres', host: config.get('POSTGRES_HOST', 'localhost'), port: config.get('POSTGRES_PORT', 5432), username: config.get('POSTGRES_USER', 'postgres'), password: config.get('POSTGRES_PASSWORD'), database: config.get('POSTGRES_DB', 'iconsulting'), autoLoadEntities: true, synchronize: config.get('NODE_ENV') !== 'production', logging: config.get('NODE_ENV') === 'development', }), }), // Health check HealthModule, // 功能模块 FileModule, ], }) export class AppModule {}