19 🔥 CRUD COMPLETO de Categorías: Editar, Actualizar y Eliminar + Mejora al Dashboard | Laravel 12

Duración: 21 min
Módulo: 📦 Módulos Esenciales (Categorías y Productos) 17-24 Lección 3 de 8

Descripción

Lección 19: 🔥 CRUD Completo de Categorías y Mejora del Dashboard

Este capítulo finaliza el módulo de Categorías con la implementación de las acciones de edición y eliminación, y realiza una mejora significativa al Dashboard principal, convirtiéndolo en un centro de información clave para el administrador.

✏️ Edición y Actualización de Categorías (Edit / Update)

Se desarrolla la lógica para modificar un registro existente, manteniendo la funcionalidad de SEO:

  • 🔍 Recuperación de Datos: El método edit() busca la categoría por su ID y la pasa a la vista de edición [02:49].
  • 🔄 Formulario Pre-rellenado: La vista edit.blade.php [03:05] utiliza los datos actuales de la categoría para rellenar los campos Nombre, SLUG y Descripción.
  • 🔗 Reutilización del Script SLUG: Se mantiene el script de JavaScript [05:07] para que, al modificar el nombre, el campo SLUG se actualice automáticamente.
  • 🛡️ Validación de Unicidad con Excepción: Al momento de la actualización (Update), la validación de SLUG se ajusta para ser única, pero con la excepción del ID de la categoría que se está editando [06:20]. Esto permite guardar el registro sin errores si el SLUG no ha sido modificado.

🗑️ Eliminación de Categorías (Destroy)

Se implementa la eliminación directa de categorías, con una nota sobre futuras protecciones:

  • 💥 Eliminación Directa: El método destroy() [08:14] implementa una eliminación simple, buscando la categoría por ID y eliminándola con el método delete().
  • ⚠️ Aviso de Integridad (Futuro): Se advierte que en el próximo módulo (Productos), se implementará una validación para evitar la eliminación de categorías que ya tengan productos asociados [09:05], protegiendo la integridad referencial de la base de datos.

📊 Mejora del Dashboard (Vista Admin/Index)

El Dashboard se transforma en un panel de control con indicadores clave del sistema:

  • 👋 Bienvenida Personalizada: Se personaliza el mensaje de bienvenida, concatenando el nombre del usuario autenticado [12:25] y mostrando su rol actual [13:07].
  • 📦 Cards Dinámicos: Se extraen cuatro cards estáticos de la plantilla y se vuelven dinámicos, mostrando información relevante del sistema en tiempo real [10:56].
  • 👥 Indicadores de Roles y Usuarios:
    • Roles Registrados: Se consulta el número total de roles [14:26], con un enlace directo a la gestión de roles.
    • Usuarios Registrados: Se cuenta el número de usuarios, excluyendo al Super Administrador [17:47] para reflejar solo los usuarios operativos del sistema.