From 59d2e5a92ccddce00da2c312eb38e7f6a657eebe Mon Sep 17 00:00:00 2001 From: Matt Young Date: Mon, 27 May 2024 21:30:55 -0500 Subject: [PATCH] School Email Domains table --- app/Models/School.php | 10 +++++++ app/Models/SchoolEmailDomain.php | 11 +++++++ ...2024_05_27_233356_create_schools_table.php | 1 + ...2230_create_school_email_domains_table.php | 29 +++++++++++++++++++ resources/views/test.blade.php | 6 +++- routes/web.php | 5 +--- 6 files changed, 57 insertions(+), 5 deletions(-) create mode 100644 app/Models/SchoolEmailDomain.php create mode 100644 database/migrations/2024_05_28_022230_create_school_email_domains_table.php diff --git a/app/Models/School.php b/app/Models/School.php index f147b2c..7e19159 100644 --- a/app/Models/School.php +++ b/app/Models/School.php @@ -4,8 +4,18 @@ namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +use Illuminate\Database\Eloquent\Relations\HasMany; class School extends Model { use HasFactory; + + public function directors(): HasMany + { + return $this->hasMany(User::class); + } + public function emailDomains(): HasMany + { + return $this->hasMany(SchoolEmailDomain::class); + } } diff --git a/app/Models/SchoolEmailDomain.php b/app/Models/SchoolEmailDomain.php new file mode 100644 index 0000000..edb881e --- /dev/null +++ b/app/Models/SchoolEmailDomain.php @@ -0,0 +1,11 @@ +id(); + $table->foreignIdFor(School::class)->constrained()->onDelete('cascade')->onUpdate('cascade'); + $table->string('domain'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('school_email_domains'); + } +}; diff --git a/resources/views/test.blade.php b/resources/views/test.blade.php index 26f7bba..04c053a 100644 --- a/resources/views/test.blade.php +++ b/resources/views/test.blade.php @@ -1,6 +1,10 @@ +@php use App\Models\School;use App\Models\User; @endphp Test Page - Hello World
+ @php + $school = School::first()->emailDomains->pluck('domain'); + dd($school); + @endphp
diff --git a/routes/web.php b/routes/web.php index 58d2791..d78bba3 100644 --- a/routes/web.php +++ b/routes/web.php @@ -8,7 +8,4 @@ Route::get('/', function () { Route::view('/test','test'); Route::view('/profile','profile')->middleware('auth','verified'); - -Route::get('/dashboard', function () { - return view('dashboard'); -})->middleware('auth', 'verified'); +Route::view('/dashboard', 'dashboard')->middleware('auth', 'verified');