feat: Use Enums for Roles

main
Flycro 2023-11-11 15:08:54 +01:00
parent 2c5934c4ed
commit 71c4fd7bb9
2 changed files with 17 additions and 1 deletions

15
app/Enums/RolesEnum.php Normal file
View File

@ -0,0 +1,15 @@
<?php
namespace App\Enums;
enum RolesEnum: string
{
case SUPERADMIN = 'super-admin';
// extra helper to allow for greater customization of displayed values, without disclosing the name/value data directly
public function label(): string
{
return match ($this) {
static::SUPERADMIN => 'Super Admin',
};
}
}

View File

@ -2,6 +2,7 @@
namespace Database\Seeders;
use App\Enums\RolesEnum;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Spatie\Permission\Models\Permission;
@ -15,6 +16,6 @@ class PermissionSeeder extends Seeder
*/
public function run(): void
{
$superAdminRole = Role::create(['name' => 'super-admin']);
$superAdminRole = app(Role::class)->findOrCreate(RolesEnum::SUPERADMIN->value, 'web');
}
}