From a7d1776c4449adcda4a420e5c2ad99e5a6597900 Mon Sep 17 00:00:00 2001 From: Matt Young Date: Thu, 11 Sep 2025 09:25:33 -0500 Subject: [PATCH] Create model and migration for prelim definitions --- app/Models/prelim_definition.php | 32 +++++++++++++++++++ ...141701_create_prelim_definitions_table.php | 29 +++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 app/Models/prelim_definition.php create mode 100644 database/migrations/2025_09_11_141701_create_prelim_definitions_table.php diff --git a/app/Models/prelim_definition.php b/app/Models/prelim_definition.php new file mode 100644 index 0000000..07480b3 --- /dev/null +++ b/app/Models/prelim_definition.php @@ -0,0 +1,32 @@ +belongsTo(Audition::class); + } + + public function room(): BelongsTo + { + return $this->belongsTo(Room::class); + } + + public function scoringGuide(): BelongsTo + { + return $this->belongsTo(ScoringGuide::class); + } +} diff --git a/database/migrations/2025_09_11_141701_create_prelim_definitions_table.php b/database/migrations/2025_09_11_141701_create_prelim_definitions_table.php new file mode 100644 index 0000000..b374410 --- /dev/null +++ b/database/migrations/2025_09_11_141701_create_prelim_definitions_table.php @@ -0,0 +1,29 @@ +id(); + $table->foreignIdFor(Audition::class)->constrained()->cascadeOnDelete()->cascadeOnUpdate(); + $table->foreignIdFor(Room::class)->nullable()->constrained()->nullOnDelete()->cascadeOnUpdate(); + $table->integer('order_in_room')->nullable(); + $table->foreignIdFor(ScoringGuide::class)->nullable()->constrained()->nullOnDelete()->cascadeOnUpdate(); + $table->float('passing_score'); + $table->timestamps(); + }); + } + + public function down(): void + { + Schema::dropIfExists('prelim_definitions'); + } +};