51 SEEDER roles y permisos en el curso de LARAVEL 10 Sistema de control de asistencia

Duración: 12 min
Módulo: Reportes Profesionales, Roles y Despliegue Final 🛡️ Lección 4 de 9

Descripción

🛠️ Lección 51: Seeders para Roles y Permisos

1. Extensión del Modelo User

Antes de continuar con los Seeders, se corrigió la importación de librerías en el modelo User para evitar errores, asegurando que se estuviera usando correctamente el trait HasRoles de Spatie [00:38].

2. Creación del Seeder de Roles

Se utilizó el comando de Artisan para generar un nuevo archivo Seeder específicamente para la gestión de roles:

  • Comando de Artisan:

    Bash

    php artisan make:seeder RoleSeeder

    (Referencia: [02:42])

3. Definición y Registro de Roles

Dentro del nuevo archivo RoleSeeder, se definió y se crearon los roles principales que manejará el sistema:

  • Roles Creados: Se determinó que el sistema tendrá dos roles base:
    • Admin (Administrador)
    • Secretaria
  • Creación en Código: Se utilizaron las funciones de Spatie para registrar estos roles en la tabla roles de la base de datos [04:30]:

    PHP

    Role::create(['name' => 'admin']); Role::create(['name' => 'secretaria']);

4. Ejecución de los Seeders

Finalmente, se ajustó el DatabaseSeeder principal para que, al ejecutarse, llame al RoleSeeder [06:25].

  • Comando de Migración y Sembrado: Para aplicar todos los cambios de la base de datos (incluyendo la creación de tablas por Spatie y el registro de roles), se ejecutó el comando:

    Bash

    php artisan migrate:fresh --seed

    El uso de migrate:fresh borró y volvió a crear todas las tablas, aplicando las nuevas migraciones y sembrando los roles definidos [07:21].

Resultado: Después de la ejecución, la base de datos ya contenía los roles "admin" y "secretaria" listos para ser asignados a los usuarios. La próxima lección se centrará en la creación de los permisos específicos y su asignación a estos roles.