25 Acción DELETE Usuarios en LARAVEL(PHP-MySql) FullStack

Duración: 8 min
Módulo: 👤 CRUD de Usuarios y UX Avanzada Lección 17 de 17

Descripción

🗑️ Lección 25: Implementación de la Acción 'Eliminar' (Delete)

Título del Video: 25 Acción DELETE Usuarios en LARAVEL (PHP-MySql) FullStack

Esta lección finaliza el ciclo CRUD (Crear, Leer, Actualizar, Eliminar) del módulo de usuarios, implementando la lógica definitiva para borrar un registro de la base de datos después de la confirmación previa.

1. 🗺️ Definición de la Ruta de Eliminación (web.php)

Se define la ruta que recibirá la petición para ejecutar la eliminación del registro.

  • Método: Se utiliza el método Route::delete(). Este es el método HTTP semánticamente correcto para indicar la destrucción de un recurso [01:26].
  • Estructura de la URL: Se usa la misma URL base que para show y update, pero el método DELETE permite que apunte a una función diferente: /admin/usuarios/{id} [01:51].
  • Función Asociada: Esta URL se asocia a la función destroy del UserController [02:17].

2. 📝 Configuración del Formulario de Confirmación (delete.blade.php)

La vista de confirmación (creada en la lección 24) se transforma en un formulario funcional para enviar la petición DELETE.

  • Método HTTP: Se añade la directiva @method('DELETE') dentro del formulario para indicarle a Laravel que simule una petición DELETE (ya que el formulario usa POST) [03:41].
  • Atributo action: La acción del formulario se establece para que apunte a la ruta admin.usuarios.destroy, pasando el ID del usuario para su eliminación [02:58].
  • Token CSRF: Se mantiene la directiva @csrf para seguridad.

3. 👩‍💻 Lógica del Controlador: Eliminación Final (UserController.php)

La función destroy() es la más simple del CRUD, ya que solo necesita ejecutar una sola línea de código para eliminar el registro.

  • Recepción del ID: La función destroy( $id ) recibe el ID del usuario a eliminar [04:20].
  • Ejecución del Borrado: Se utiliza el método estático User::destroy($id) (o User::findOrFail($id)->delete()) que se encarga de buscar el usuario por su ID y borrarlo de la base de datos [05:01].
  • Redirección: Una vez ejecutado el borrado, se redirige al usuario a la vista de listado (admin.usuarios.index) con un mensaje de éxito: "Se eliminó al usuario de la manera correcta" [05:19].