Upgrade to Prisma 7 with adapter pattern
- Update prisma and @prisma/client to ^7.0.0 - Add @prisma/adapter-pg for PostgreSQL connections - Create prisma.config.ts for datasource configuration - Remove url from schema.prisma datasource block - Update prisma.ts to use PrismaPg adapter pattern Breaking change in Prisma 7: datasource url now configured via prisma.config.ts instead of schema.prisma Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
49e5f4c43f
commit
67bb4138f3
|
|
@ -21,7 +21,8 @@
|
|||
"@auth/prisma-adapter": "^2.7.4",
|
||||
"@aws-sdk/client-s3": "^3.968.0",
|
||||
"@hookform/resolvers": "^3.9.1",
|
||||
"@prisma/client": "^6.2.1",
|
||||
"@prisma/adapter-pg": "^7.0.0",
|
||||
"@prisma/client": "^7.0.0",
|
||||
"@radix-ui/react-avatar": "^1.1.11",
|
||||
"@radix-ui/react-checkbox": "^1.3.3",
|
||||
"@radix-ui/react-dialog": "^1.1.4",
|
||||
|
|
@ -78,7 +79,7 @@
|
|||
"jsdom": "^27.0.1",
|
||||
"postcss": "^8.4.49",
|
||||
"prettier": "^3.4.2",
|
||||
"prisma": "^6.2.1",
|
||||
"prisma": "^7.0.0",
|
||||
"tailwindcss": "^3.4.17",
|
||||
"tsx": "^4.19.2",
|
||||
"typescript": "^5.7.3",
|
||||
|
|
|
|||
|
|
@ -0,0 +1,12 @@
|
|||
import 'dotenv/config'
|
||||
import { defineConfig, env } from 'prisma/config'
|
||||
|
||||
export default defineConfig({
|
||||
schema: 'prisma/schema.prisma',
|
||||
migrations: {
|
||||
path: 'prisma/migrations',
|
||||
},
|
||||
datasource: {
|
||||
url: env('DATABASE_URL'),
|
||||
},
|
||||
})
|
||||
|
|
@ -7,7 +7,7 @@ generator client {
|
|||
|
||||
datasource db {
|
||||
provider = "postgresql"
|
||||
url = env("DATABASE_URL")
|
||||
// url configured in prisma.config.ts (Prisma 7+)
|
||||
}
|
||||
|
||||
// ============================================================================
|
||||
|
|
|
|||
|
|
@ -1,10 +1,15 @@
|
|||
import { PrismaClient } from '@prisma/client'
|
||||
import { PrismaPg } from '@prisma/adapter-pg'
|
||||
|
||||
const globalForPrisma = globalThis as unknown as {
|
||||
prisma: PrismaClient | undefined
|
||||
}
|
||||
|
||||
export const prisma = globalForPrisma.prisma ?? new PrismaClient()
|
||||
const adapter = new PrismaPg({
|
||||
connectionString: process.env.DATABASE_URL!,
|
||||
})
|
||||
|
||||
export const prisma = globalForPrisma.prisma ?? new PrismaClient({ adapter })
|
||||
|
||||
if (process.env.NODE_ENV !== 'production') globalForPrisma.prisma = prisma
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue