27 Cómo Restaurar Usuarios Eliminados en el Sistema de Préstamos Método Restore y WithTrashed
Duración: 16 minDescripción
🔄 Lección 27: Cómo Restaurar Usuarios Eliminados (Método Restore y WithTrashed)
En esta sesión de Benji V2, aprenderás a revertir la eliminación suave (Soft Deletes) para recuperar cuentas de usuario. Implementaremos una lógica que permite visualizar registros "borrados", gestionar sus estados y reactivarlos directamente desde la interfaz administrativa de Laravel 12.
👁️ Visualización de Registros Eliminados
Por defecto, Laravel oculta los registros que tienen una fecha en deleted_at. Aprendemos a romper esa barrera:
- 🔍 Método withTrashed(): Modificamos la consulta del controlador para que el listado incluya tanto a los usuarios activos como a los que han sido eliminados suavemente [03:01].
- 🚦 Estados Dinámicos: En la tabla principal, implementamos una lógica visual: si el usuario tiene una fecha de eliminación, se muestra un indicador rojo de "Inactivo"; de lo contrario, uno verde de "Activo" [04:36].
🛠️ Interfaz de Restauración Inteligente
Optimizamos la tabla de acciones para que sea contextual:
- 🔀 Botones Condicionales: Si un usuario está eliminado, el sistema oculta los botones de Ver, Editar y Eliminar, mostrando únicamente un botón de "Restaurar" con un icono de retorno (undo) [06:44].
- 🛡️ Seguridad en la Acción: Antes de proceder, el sistema lanza una alerta de confirmación: "¿Deseas restaurar este registro?", evitando reactivaciones accidentales [11:45].
⚙️ Lógica del Backend: El Método Restore
Implementamos el proceso inverso de la baja:
- 🛣️ Nueva Ruta de Restauración: Definimos una ruta específica (/usuarios/{id}/restaurar) que apunta a un nuevo método en el controlador [08:03].
- 🔄 Reversión Completa: El método restore() limpia la columna deleted_at en la base de datos. Simultáneamente, actualizamos el campo estado de vuelta a "Activo" para que el usuario pueda iniciar sesión nuevamente de inmediato [14:03].
- ⚡ Limpieza de Caché: Aprendemos a usar php artisan optimize:clear para asegurar que las nuevas rutas sean reconocidas por el servidor sin conflictos [13:20].
✅ Resultado de la Lección
Al finalizar, habrás completado el ciclo de vida total del usuario. Tu sistema ahora no solo permite crear, editar y dar de baja, sino que ofrece una red de seguridad para recuperar información valiosa, manteniendo la integridad del historial de préstamos y la continuidad operativa del negocio.
Lecciones
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️