From ea833c6bd01c2b33e94f2799ba2332cfaba49bcd Mon Sep 17 00:00:00 2001 From: danijemmo Date: Sat, 29 Nov 2025 15:51:50 +0300 Subject: [PATCH] feat: Add initial Prisma schema with data models and configure cascade deletes for restaurant-related entities. --- .../migration.sql | 17 +++++++++++++++++ prisma/schema.prisma | 6 +++--- 2 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 prisma/migrations/20251129124816_cascade_delete_restaurant/migration.sql diff --git a/prisma/migrations/20251129124816_cascade_delete_restaurant/migration.sql b/prisma/migrations/20251129124816_cascade_delete_restaurant/migration.sql new file mode 100644 index 0000000..623b2ff --- /dev/null +++ b/prisma/migrations/20251129124816_cascade_delete_restaurant/migration.sql @@ -0,0 +1,17 @@ +-- DropForeignKey +ALTER TABLE "Category" DROP CONSTRAINT "Category_restaurantId_fkey"; + +-- DropForeignKey +ALTER TABLE "MenuItem" DROP CONSTRAINT "MenuItem_categoryId_fkey"; + +-- DropForeignKey +ALTER TABLE "MenuItem" DROP CONSTRAINT "MenuItem_restaurantId_fkey"; + +-- AddForeignKey +ALTER TABLE "Category" ADD CONSTRAINT "Category_restaurantId_fkey" FOREIGN KEY ("restaurantId") REFERENCES "Restaurant"("id") ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE "MenuItem" ADD CONSTRAINT "MenuItem_categoryId_fkey" FOREIGN KEY ("categoryId") REFERENCES "Category"("id") ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE "MenuItem" ADD CONSTRAINT "MenuItem_restaurantId_fkey" FOREIGN KEY ("restaurantId") REFERENCES "Restaurant"("id") ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 0047936..fd45408 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -99,7 +99,7 @@ model Category { name String restaurantId String - restaurant Restaurant @relation(fields: [restaurantId], references: [id]) + restaurant Restaurant @relation(fields: [restaurantId], references: [id], onDelete: Cascade) items MenuItem[] } @@ -112,10 +112,10 @@ model MenuItem { image String? categoryId String? - category Category? @relation(fields: [categoryId], references: [id]) + category Category? @relation(fields: [categoryId], references: [id], onDelete: Cascade) restaurantId String - restaurant Restaurant @relation(fields: [restaurantId], references: [id]) + restaurant Restaurant @relation(fields: [restaurantId], references: [id], onDelete: Cascade) createdAt DateTime @default(now()) }