37 Como eliminar los archivos en directorio y base de datos de LARAVEL (PHP y MySql) FullStack
Duración: 18 minDescripción
🗑️ Lección 37: Cómo Eliminar Archivos en Directorio y Base de Datos
Este capítulo aborda la implementación de la función "Eliminar" (Delete) dentro del sistema, asegurando que un archivo sea eliminado completamente tanto del sistema de archivos (Storage/Directorio) como del registro en la base de datos (BD).
🛠️ Configuración del Botón de Eliminación
El primer paso es crear el botón que disparará la acción de eliminación:
- Formulario: Se envuelve el botón dentro de una etiqueta <form> en la columna de "Acciones" de la tabla, ya que la eliminación se manejará como una solicitud DELETE HTTP [01:47].
- Input Oculto: Se crea un campo <input type="hidden"> que transporta el ID del archivo ($archivo->id) para que el controlador sepa qué registro eliminar [02:06].
- Botón: Se añade un botón de tipo submit con la clase de Bootstrap btn btn-danger (rojo) y el icono de bote de basura (trash) [02:45].
🔗 Definición de Rutas y Controlador
Se configura el backend para manejar la solicitud de eliminación:
- Ruta DELETE: En el archivo de rutas (web.php), se define una nueva ruta utilizando el método Route::delete() y se le asigna un nombre para facilitar la redirección [04:42].
- Métodos del Formulario: Para que el formulario HTML envíe una solicitud DELETE, se deben incluir dos directivas dentro del formulario:
- Función en el Controlador: En el ArchivoController, se crea la función eliminar_archivo que recibe la solicitud (Request) [05:22].
📝 Lógica de Eliminación (BD y Storage)
La función del controlador ejecuta dos pasos críticos para la eliminación total del archivo:
- Eliminación del Directorio (Storage):
- Eliminación de la Base de Datos:
- Una vez que el archivo es borrado físicamente, se utiliza el método destroy() del modelo para eliminar el registro correspondiente de la tabla archivos [13:46].
- Redireccionamiento: Finalmente, se redirige al usuario a la vista de la carpeta con un mensaje de éxito (success) [15:05].
Con esto, el sistema cumple con la funcionalidad de eliminar archivos de manera segura y completa. El instructor anuncia que el siguiente tema será la gestión de archivos públicos y privados [17:37].
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! ❤️