From 079e669d71bac4ae3eac12c33f126a6af3ddb32c Mon Sep 17 00:00:00 2001 From: Hasin Hayder Date: Mon, 30 May 2022 00:00:20 +0600 Subject: [PATCH] Disabled foreignKeyConstraints check before truncating tables in the seeders and enabled after it's done --- database/seeders/RoleSeeder.php | 7 ++++++- database/seeders/UserRoleSeeder.php | 4 ++++ database/seeders/UsersSeeder.php | 4 ++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/database/seeders/RoleSeeder.php b/database/seeders/RoleSeeder.php index 5ed6f89..2387f92 100644 --- a/database/seeders/RoleSeeder.php +++ b/database/seeders/RoleSeeder.php @@ -6,6 +6,7 @@ use Illuminate\Database\Console\Seeds\WithoutModelEvents; use Illuminate\Database\Seeder; use App\Models\Role; use Illuminate\Support\Facades\DB; +use Illuminate\Support\Facades\Schema; class RoleSeeder extends Seeder { /** @@ -14,6 +15,10 @@ class RoleSeeder extends Seeder { * @return void */ public function run() { + Schema::disableForeignKeyConstraints(); + DB::table('roles')->truncate(); + Schema::enableForeignKeyConstraints(); + $roles = [ ['name' => 'Administrator', 'slug' => 'admin'], ['name' => 'User', 'slug' => 'user'], @@ -22,7 +27,7 @@ class RoleSeeder extends Seeder { ['name' => 'All', 'slug' => '*'], ['name' => 'Super Admin', 'slug' => 'super-admin'], ]; - DB::table('roles')->truncate(); + collect($roles)->each(function($role){ Role::create($role); }); diff --git a/database/seeders/UserRoleSeeder.php b/database/seeders/UserRoleSeeder.php index 5b43128..7a90e9c 100644 --- a/database/seeders/UserRoleSeeder.php +++ b/database/seeders/UserRoleSeeder.php @@ -6,6 +6,7 @@ use App\Models\UserRole; use Illuminate\Database\Console\Seeds\WithoutModelEvents; use Illuminate\Database\Seeder; use Illuminate\Support\Facades\DB; +use Illuminate\Support\Facades\Schema; class UserRoleSeeder extends Seeder { @@ -16,7 +17,10 @@ class UserRoleSeeder extends Seeder */ public function run() { + Schema::disableForeignKeyConstraints(); DB::table('user_roles')->truncate(); + Schema::enableForeignKeyConstraints(); + UserRole::create([ 'user_id'=>1, 'role_id'=>1 diff --git a/database/seeders/UsersSeeder.php b/database/seeders/UsersSeeder.php index 0d93c23..a385c33 100644 --- a/database/seeders/UsersSeeder.php +++ b/database/seeders/UsersSeeder.php @@ -7,6 +7,7 @@ use Illuminate\Database\Seeder; use App\Models\User; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\DB; +use Illuminate\Support\Facades\Schema; class UsersSeeder extends Seeder { @@ -17,7 +18,10 @@ class UsersSeeder extends Seeder */ public function run() { + Schema::disableForeignKeyConstraints(); DB::table('users')->truncate(); + Schema::enableForeignKeyConstraints(); + User::create([ 'email'=>'admin@hydra.project', 'password'=>Hash::make('hydra'),