fix(api-prisma): initialize prisma client with pg adapter

This commit is contained in:
2026-04-05 01:07:05 +08:00
parent 3a9b5fb000
commit e84bef07b4
3 changed files with 209 additions and 0 deletions
+2
View File
@@ -39,10 +39,12 @@
"@nestjs/jwt": "^11.0.2",
"@nestjs/platform-express": "^11.1.18",
"@otplib/preset-default": "^12.0.1",
"@prisma/adapter-pg": "^7.6.0",
"@prisma/client": "^7.6.0",
"class-transformer": "^0.5.1",
"class-validator": "^0.15.1",
"otplib": "^13.4.0",
"pg": "^8.20.0",
"reflect-metadata": "^0.2.2",
"rxjs": "^7.8.2"
}
+15
View File
@@ -1,8 +1,23 @@
import { Injectable, OnModuleDestroy, OnModuleInit } from "@nestjs/common";
import { ConfigService } from "@nestjs/config";
import { PrismaPg } from "@prisma/adapter-pg";
import { PrismaClient } from "../../generated/prisma/client";
@Injectable()
export class PrismaService extends PrismaClient implements OnModuleInit, OnModuleDestroy {
constructor(configService: ConfigService) {
const connectionString = configService.get<string>("DATABASE_URL");
if (!connectionString) {
throw new Error("缺少数据库连接配置 DATABASE_URL");
}
super({
adapter: new PrismaPg({
connectionString
})
});
}
async onModuleInit(): Promise<void> {
await this.$connect();
}