08 🧩 Creación y Registro de Roles | Controlador, Rutas y Formulario | Ecommerce Laravel 12 FullStack

Duración: 19 min
Módulo: 🛡️ Roles, Permisos y Gestión de Usuarios (Spatie) 7-16 Lección 2 de 10

Descripción

Lección 08: 🧩 Desarrollo del CRUD Básico de Roles (Creación y Persistencia)

Tras instalar la librería Spatie en el capítulo anterior, Hilari Web inicia el desarrollo práctico del módulo de Roles, centrándose en la creación del controlador, la definición de rutas y el diseño del formulario para registrar nuevos roles en el sistema.

El objetivo es establecer el flujo completo de la creación de un rol, desde la interfaz hasta la base de datos.

🏗️ Componentes Fundamentales de la Arquitectura

Esta lección cubre los tres pilares del patrón Modelo-Vista-Controlador (MVC) para el módulo de Roles:

  • 1. 🎛️ Creación del Controlador Resource:
    • Se utiliza el comando PHP Artisan make:controller RoleController --resource [01:38] para generar automáticamente el controlador con las siete funciones básicas (index, create, store, show, edit, update, destroy).
  • 2. 🛣️ Definición de Rutas:
    • Se configuran las rutas admin/roles en el archivo web.php [03:03] y se enlazan con el RoleController.
    • Se define la ruta tipo GET para mostrar el listado (roles.index) [03:32] y la ruta para el formulario de creación (roles.create) [07:12].
    • Se define la ruta tipo POST para la función de guardado (roles.store) [13:40].
  • 3. 📝 Diseño y Seguridad del Formulario (create.blade.php):
    • Se crea la vista create [07:38], donde se diseña un formulario simple y elegante de cuatro columnas (col-md-4) [08:55] que solo requiere el campo Nombre del Rol.
    • 🔑 Seguridad: Se incluye el token @csrf [14:43] dentro del formulario para proteger la petición.
  • 4. 🔒 Validación Esencial de Unicidad:
    • En la función store del controlador, se implementa una validación crucial: el campo name debe ser required, tener un máximo de 200 caracteres, y, lo más importante, debe ser único en la tabla roles [16:14]. Esta regla evita la duplicidad de roles como "administrador".

Al finalizar la lección, se logra el registro exitoso de roles (e.g., "administrador", "cajero") en la base de datos [17:51], sentando las bases para el listado y la gestión completa en el próximo capítulo.