20 👤 Módulo Usuarios: Estructura de Base de Datos y Nuevos Atributos | Benji V2 🔐 Migración nueva

Duración: 21 min
Módulo: Módulo Usuarios Lección 1 de 8

Descripción

👤 Lección 20: Módulo Usuarios: Estructura de Base de Datos y Nuevos Atributos

En esta sesión, damos inicio al Módulo de Usuarios en Benji V2. Aprenderás a expandir la tabla predeterminada de Laravel para adaptarla a las necesidades reales de un sistema de préstamos, implementando conceptos avanzados de migración y persistencia de datos.

📂 Gestión de Versiones con Git

Antes de comenzar el nuevo desarrollo, aseguramos el progreso anterior siguiendo las mejores prácticas:

  • 📸 Commit de Roles: Realizamos el cierre oficial del módulo de roles, subiendo todos los cambios al repositorio de GitHub para mantener un historial de versiones limpio [05:13].
  • 📜 Auditoría de Cambios: Verificamos el estado del proyecto con git status y revisamos el historial con git log antes de proceder con las nuevas migraciones [05:45].

🧠 Ampliando la Tabla de Usuarios (Migraciones)

Transformamos la estructura básica de Laravel en una base de datos robusta:

  • 🆔 Datos Personales: Añadimos campos específicos como Nombres, Apellidos, Tipo de Documento (DNI, CI, RUC), Número de Documento (Único), Celular y Dirección [07:34].
  • 📋 Atributos Detallados: Incorporamos campos de Fecha de Nacimiento, Género (masculino/femenino), Foto de Perfil (nula por defecto) y datos de contacto de emergencia [09:51].
  • 🛡️ Soft Deletes: Implementamos la eliminación suave (softDeletes). Esto permite que, si un usuario se retira de la empresa, su registro sea "oculto" pero no borrado, manteniendo así la integridad de los préstamos e historial que ese usuario generó en el pasado [11:52].

💾 Automatización con Seeders y Factories

Ahorramos tiempo de desarrollo automatizando la carga de datos de prueba:

  • 🏗️ User Factory: Personalizamos el generador de usuarios para que, cada vez que reiniciemos la base de datos, se creen perfiles con nombres y documentos realistas de forma automática [16:12].
  • 🌱 Database Seeder: Configuramos el sembrador de base de datos para que cree instantáneamente los roles fundamentales (Super Administrador, Prestamista, Cobrador, etc.) al ejecutar el comando php artisan migrate:fresh --seed [18:47].

Resultado de la Lección

Al finalizar, habrás configurado un entorno de desarrollo profesional para el módulo de usuarios. Tu base de datos ahora es capaz de almacenar perfiles detallados, gestionar la seguridad de acceso y proteger el historial del sistema mediante eliminaciones no destructivas.