30 📝 CREAR CUENTA de Cliente | Formulario, Validación y Almacenamiento de Usuarios | Laravel 12

Duración: 25 min
Módulo: 🛒 Tienda Online (Frontend Shop) y Funcionalidades 25-33 Lección 6 de 9

Descripción

Lección 30: 📝 Creación de Cuenta de Cliente y Autenticación

Este capítulo crucial se enfoca en permitir a los visitantes registrarse como clientes en la plataforma de e-commerce, abarcando la implementación del formulario, la validación de datos y la correcta asignación de roles de usuario.

🚪 Gestión de la Sesión del Usuario

Se mejora la interfaz del header para reflejar el estado de autenticación del usuario:

  • Identificación en Header: Se implementa la lógica para mostrar el nombre y el correo electrónico del usuario autenticado en la barra de navegación [01:10].
  • Botón Dinámico: Se utiliza una sentencia @if (Auth::check()) para mostrar el botón "Cerrar Sesión" si el usuario está autenticado, o los botones de "Iniciar Sesión" y "Crear Cuenta" en caso contrario [04:43].

✍️ Configuración del Formulario de Registro

Se establece la interfaz y la ruta para la creación de nuevas cuentas:

  • Ruta de Registro: Se define la nueva ruta GET /web-registro y su función correspondiente en el controlador para cargar la vista del formulario [07:32].
  • Vista y Traducción: Se adapta la plantilla HTML para la vista registro.blade.php [09:41], traduciendo los campos esenciales como "Nombre Completo", "Correo Electrónico" y "Contraseña" [11:40].
  • Acción del Formulario: Se configura el formulario para enviar los datos mediante el método POST a la ruta crear-cuenta, asegurando el token de seguridad CSRF [15:32].

🛡️ Validación, Almacenamiento y Asignación de Rol

Se desarrolla la lógica del controlador para procesar los datos de registro:

  • Estructura de la Función: Se crea la función crearCuenta para recibir los datos del Request [15:09].
  • Validación Estricta: Se descubre y corrige un error común en Laravel: el campo de confirmación de contraseña debe nombrarse exactamente password_confirmation para que la validación de confirmación funcione correctamente y la cuenta pueda crearse [21:16].
  • Creación del Usuario: Una vez validados, los datos se utilizan para crear una nueva instancia del modelo User, y la contraseña se encripta inmediatamente [17:34].
  • Asignación de Rol: Al nuevo usuario se le asigna el rol cliente de forma automática [18:17].
  • Autenticación Inmediata: Finalmente, el sistema autentica al nuevo usuario inmediatamente después del registro, redirigiéndolo al dashboard y permitiendo el acceso a las funciones avanzadas [22:15].