Roy
09/25/2020, 1:45 PMmodel User {
id String @id
email String @unique
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
profile Profile?
}
model Profile {
id String @id @default(cuid())
user User? @relation(fields: [userId], references: [id])
userId String?
playedGames PlayerInGame[]
joinedLeagues PlayerInLeague[]
}
model League {
id String @id @default(cuid())
name String @unique
games Game[]
players PlayerInLeague[]
}
model PlayerInLeague {
id String @id @default(cuid())
league League @relation(fields: [leagueId], references: [id])
player Profile @relation(fields: [profileId], references: [id])
points Int
leagueId String
profileId String
}
model Game {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
homePoints Int
awayPoints Int
league League @relation(fields: [leagueId], references: [id])
leagueId String
// HERE I NEED TO KEEP TRACK OF PLAYERS and their statistics. Who won, how many point etc.
}
model PlayerInGame {
id String @id @default(cuid())
game Game @relation(fields: [gameId], references: [id])
player Profile @relation(fields: [profileId], references: [id])
gameId Int
profileId String @unique
}
Ryan
09/25/2020, 2:11 PMmodel User {
id String @id
email String @unique
playedGames Game[]
joinedLeagues PlayerInLeague[]
gameStats GameStats[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
}
model League {
id String @id @default(cuid())
name String @unique
games Game[]
players PlayerInLeague[]
}
model PlayerInLeague {
id String @id @default(cuid())
league League @relation(fields: [leagueId], references: [id])
player User @relation(fields: [profileId], references: [id])
points Int
leagueId String
profileId String
}
model Game {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
homePoints Int
awayPoints Int
league League @relation(fields: [leagueId], references: [id])
leagueId String
// HERE I NEED TO KEEP TRACK OF PLAYERS and their statistics. Who won, how many point etc.
gameStats GameStats[]
players User[]
}
model GameStats {
id Int @id @default(autoincrement())
games Game? @relation(fields: [gameId], references: [id])
user User? @relation(fields: [userId], references: [id])
points Int
isWinner Boolean
gameId Int?
userId String?
}
Let me know if this make sense. I have also simplified your model wherever required 🙂Roy
09/25/2020, 2:22 PM