Prisma Schema迁移报错求助:执行npm prisma migrate dev遇问题
解决Prisma迁移报错的方案
你的报错源于模型间关联名称存在歧义,Prisma无法自动区分User、Product与Order之间的双向关联逻辑。以下是修正后的完整Schema代码:
model User { id Int @id @default(autoincrement()) username String email String @unique password String orders Order[] @relation("UserOrders") products Product[] } model Product { id Int @id @default(autoincrement()) name String description String price Int stock Int userId Int user User @relation(fields: [userId], references: [id]) images Image[] orders Order[] @relation("ProductOrders") } model Image { id Int @id @default(autoincrement()) url String productId Int product Product @relation(fields: [productId], references: [id]) } model Order { id Int @id @default(autoincrement()) quantity Int totalPrice Int orderDate DateTime status String userId Int user User @relation(name: "UserOrders", fields: [userId], references: [id]) productId Int product Product @relation(name: "ProductOrders", fields: [productId], references: [id]) }
问题说明
User和Product模型中都定义了orders Order[]字段,Prisma无法自动识别这两个orders分别对应Order模型里的哪一条关联,必须手动指定关联名称来明确绑定方向。
操作步骤
- 将上述修正后的代码替换到你的Prisma Schema文件中
- 执行正确的迁移命令:
npx prisma migrate dev(原命令写成npm prisma migrate dev有误,需用npx调用本地安装的Prisma CLI)
内容的提问来源于stack exchange,提问作者user26630048
相关产品推荐
相关产品推荐

