15 🗑️ SOFT DELETES: Editar y Eliminar Usuarios en Laravel 12 | CRUD Completo E-commerce FullStack
Duración: 21 min
Módulo: 🛡️ Roles, Permisos y Gestión de Usuarios (Spatie) 7-16
Lección 9 de
10
Descripción
Lección 15: 🛡️ Seguridad y Auditoría: Edición y Eliminación Suave (Soft Deletes) de Usuarios
Este capítulo crucial completa el CRUD del módulo de Usuarios, implementando la actualización de datos de forma flexible y, lo más importante, una estrategia de eliminación que prioriza la auditoría y la integridad referencial del sistema.
✏️ Actualización Inteligente de Registros (Acción Edit/Update)
Se refina la lógica para actualizar la información de un usuario sin generar fricción en la experiencia de gestión:
- 🔑 Contraseña Opcional: En la validación del request de actualización, el campo password deja de ser requerido [07:14]. Esto permite al administrador modificar el rol o el nombre sin forzar al usuario a cambiar su contraseña.
- ✅ Validación Condicional: Se implementa una verificación if (request('password')) [09:58]. Solo si el campo de contraseña viene con datos, el sistema procede a encriptarla y actualizarla.
- 🔄 Sincronización de Rol: Se utiliza la función para actualizar inmediatamente el rol del usuario (syncRoles) [10:16], reflejando el cambio en la tabla pivote de permisos.
🗑️ Eliminación Suave y Auditoría (Acción Destroy)
En lugar de borrar registros físicamente, se implementa el concepto de Soft Deletes para conservar datos históricos:
- ✨ Confirmación Elegante: El proceso de eliminación se inicia con un pop-up de SweetAlert2 [14:16], ofreciendo una experiencia de usuario superior al alert() clásico para confirmar la acción.
- 👻 Activación del Trait: Se añade el trait SoftDeletes al modelo User [17:53]. Esta herramienta instruye a Laravel para que, en lugar de borrar la fila, simplemente complete el campo deleted_at.
- 🔴 Marcado de Inactividad: Adicionalmente, se marca el campo estado del usuario como false [18:49] y luego se ejecuta el método delete(). El resultado es que el usuario desaparece del listado visible [19:41] y el campo deleted_at se rellena [19:57], manteniendo el registro para futuras auditorías o una posible restauración.
Lecciones
🚀 Configuración Inicial y Sistema de Administración 1-6
🛡️ Roles, Permisos y Gestión de Usuarios (Spatie) 7-16
Lección 4. 10 ⚙️ CRUD Completo de Roles | Spatie Roles & Permisos | Ecommerce Laravel 12 FullStack
25 min
Lección 6. 12 🔐 Ajustes en el Login y Seeder de Usuarios | Sistema Ecommerce Laravel 12 FullStack
40 min
Lección 8. 14 🔍 Buscador y Detalle de Usuarios (Acción Show) | Ecommerce Laravel 12 FullStack
32 min
📦 Módulos Esenciales (Categorías y Productos) 17-24
🛒 Tienda Online (Frontend Shop) y Funcionalidades 25-33
Lección 4. 28 🛒 Vista Show Dinámica del Producto | Descripción y Datos Relacionados | Laravel 12
15 min
💳 Carrito, Checkout y Pasarela de Pagos 34-42
Lección 4. 37 💳 PASARELA DE PAGOS PayPal | Integración y Lógica de Checkout en Laravel 12 E-commerce
27 min
Lección 5. 38 ✅ PAGO COMPLETADO y REGISTRO de Pedido | Lógica Final de Venta con PayPal y Laravel 12
11 min
⚙️ Gestión de Órdenes, Perfiles y Características Avanzadas 43-61
Lección 5. 47 🔗 BUSCADOR AVANZADO: Filtrando Tablas Relacionadas con WHERE HAS y Joins en Laravel 12
10 min
📊 Análisis de Datos, Despliegue y Conclusión 62-68
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️