PrismaP
Prisma9mo ago
18 replies
begot

multi-file schema doesn't work @6.7.0

whenever i run
prisma generate
i get the following error:
Error: Prisma schema validation - (get-dmmf wasm)
Error code: P1012
error: Type "RaceEntry" is neither a built-in type, nor refers to another model, composite type, or enum.
  -->  prisma\main.prisma:14
   | 
13 |   id String @id @default(cuid())
14 |   raceEntries RaceEntry[]
   | 

Validation Error Count: 1
[Context: getDmmf]

Prisma CLI Version : 6.7.0


i don't get an error if i remove the Test model from my main.prisma file, but then it doesn't generate any types. and if i run prisma db push no models are added.

here's my setup

prisma.config.ts

import 'dotenv/config'

import path from 'node:path'

import { defineConfig } from 'prisma/config'

export default defineConfig({
  schema: path.join('prisma', 'main.prisma'),
  earlyAccess: true,
})

prisma/main.prisma
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["queryCompiler", "driverAdapters"]
  output          = "../client"
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

model Test {
  id String @id @default(cuid())
  raceEntries RaceEntry[]
}

prisma/models/races.prisma
model Race {
  id          String    @id @default(cuid())
  name        String
  start       DateTime
  end         DateTime
  status      String    @default("active") // active, completed
  createdAt   DateTime  @default(now())
  updatedAt   DateTime  @updatedAt

  // Relations
  entries     RaceEntry[]
  history     RaceHistory[]
}

model RaceEntry {
  id          String    @id @default(cuid())
  score       Int       // Stored in milliseconds
  position    Int
  createdAt   DateTime  @default(now())
  updatedAt   DateTime  @updatedAt

  // Relations
  profileId   String
  profile     Profile   @relation(fields: [profileId], references: [id])
  raceId      String
  race        Race      @relation(fields: [raceId], references: [id])

  @@unique([profileId, raceId])
} 

profiles.prisma
model Profile {
  id          String    @id @default(cuid())
  displayName String    @unique
  createdAt   DateTime  @default(now())
  updatedAt   DateTime  @updatedAt

  // Relations
  raceEntries RaceEntry[]
  raceHistory RaceHistory[]
  bossEntries BossEntry[]
  bossHistory BossHistory[]
}

i'm importing my generated client for my prisma service.
Was this page helpful?