diff --git a/prisma/migrations/20250523141014_reports_target_creator/migration.sql b/prisma/migrations/20250523141014_reports_target_creator/migration.sql new file mode 100644 index 0000000..b025e94 --- /dev/null +++ b/prisma/migrations/20250523141014_reports_target_creator/migration.sql @@ -0,0 +1,5 @@ +-- AlterTable +ALTER TABLE "reports" ADD COLUMN "creatorId" INTEGER; + +-- AddForeignKey +ALTER TABLE "reports" ADD CONSTRAINT "reports_creatorId_fkey" FOREIGN KEY ("creatorId") REFERENCES "users"("id") ON DELETE SET NULL ON UPDATE CASCADE; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 5f50162..fe62043 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -21,11 +21,12 @@ model User { usernameUpdatedAt DateTime? imageUpdatedAt DateTime? - accounts Account[] - sessions Session[] - miis Mii[] - likes Like[] - Report Report[] + accounts Account[] + sessions Session[] + miis Mii[] + likes Like[] + reportsAuthored Report[] @relation("ReportAuthor") + reports Report[] @relation("ReportTargetCreator") @@map("users") } @@ -106,11 +107,13 @@ model Report { reason ReportReason reasonNotes String? - // note: this refers to the person who made the report - authorId Int? createdAt DateTime @default(now()) - user User? @relation(fields: [authorId], references: [id]) + // note: this refers to the person who made the report + authorId Int? + author User? @relation("ReportAuthor", fields: [authorId], references: [id]) + creatorId Int? + creator User? @relation("ReportTargetCreator", fields: [creatorId], references: [id]) @@map("reports") }