13 👥 Nuevo Módulo de Usuarios | Listado y Creación de Usuarios | Ecommerce Laravel 12 FullStack

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

Descripción

Lección 13: 👥 Construcción del Módulo de Usuarios (Listado y Creación)

En esta etapa, Hilari Web inicia la construcción del módulo fundamental para la gestión de personal y clientes: Usuarios. La lección se centra en sentar las bases de la interfaz administrativa para el manejo de las cuentas de acceso al sistema.

🗺️ Configuración Inicial del Módulo

Se definen los elementos de navegación y la estructura de código para soportar el CRUD de usuarios:

  • 1. 🔗 Integración al Menú: El nuevo módulo de "Usuarios" se añade al menú principal [01:37], utilizando un icono peoples para una representación visual clara.
  • 2. ⚙️ Controlador y Rutas: Se genera el UsuarioController con todos los recursos (--resource) [02:48] y se definen las rutas correspondientes (admin/usuarios) [03:14], asegurando que todas las acciones de gestión estén mapeadas correctamente.

📑 Implementación del Listado (Index)

La primera tarea es mostrar de forma eficiente los usuarios ya registrados en la base de datos:

  • 📊 Consulta Paginada: Se utiliza el modelo User y el método paginate(10) [07:13] para recuperar a los usuarios en bloques, optimizando el rendimiento de la vista.
  • 🏷️ Campos Visibles: La tabla de listado incluye el número correlativo, el Nombre del Usuario, el Correo Electrónico y un espacio reservado para el Rol del Usuario [06:44] (que será implementado en un capítulo posterior).

➕ Creación de Nuevos Usuarios (Store)

Se implementa el formulario de registro con validación estricta, crucial para la seguridad:

  • 📝 Formulario Esencial: El formulario de creación incluye los campos básicos: Nombre, Correo Electrónico, Contraseña y Confirmación de Contraseña [13:27].
  • 🔒 Reglas de Validación: Se aplican reglas rigurosas [15:34], incluyendo:
    • El campo email debe ser único en la tabla de users.
    • La password requiere un mínimo de 8 caracteres y debe ser confirmada.
  • 🔑 Encriptación de Contraseña: Antes de guardar, la contraseña es cifrada (Hash::make()) [16:34], manteniendo los estándares de seguridad.
  • 💬 Notificación de Éxito: La acción finaliza con un mensaje dinámico de SweetAlert2 [16:43] que confirma el registro exitoso al usuario.