33 Cargar fotografia del registro de la base de datos conLARAVEL 10-Sistema de control de asistencia
Duración: 13 min
Módulo: Consulta de Detalles y Gestión de Archivos 🖼️
Lección 4 de
4
Descripción
🎬 Lección 33: 📸 Carga Condicional de Fotografías y Avatares
Enlace del Video: https://youtu.be/nnmdxtjtyXU
💡 Objetivo:
Implementar la lógica final en la vista show.blade.php para mostrar la fotografía del miembro si existe, o un avatar de género por defecto si el campo está vacío, haciendo que el storage sea accesible públicamente.
1️⃣ Acceso Público al Directorio de Archivos 🌐
Laravel, por seguridad, aísla los archivos cargados. Para que las imágenes puedan ser servidas al navegador, es necesario establecer un enlace simbólico:
- Comando Clave: Se ejecuta la instrucción php artisan storage:link en la terminal [02:30].
- Resultado: Este comando crea un symlink (/public/storage) que apunta al directorio real donde se guardan las imágenes (/storage/app/public), permitiendo que las imágenes sean accesibles a través de URLs públicas.
2️⃣ Lógica Condicional para la Visualización de la Imagen 👤
Se implementan las condiciones en Blade para cubrir todos los escenarios posibles del campo fotografia del miembro:
Se anidan estructuras @if para determinar qué imagen mostrar:
- Condición Principal (¿Tiene foto?): Se pregunta si el campo $miembro->fotografia es nulo [09:59].
- Si SÍ tiene Foto (No es nulo) ✅:
- Se utiliza la etiqueta <img> y el helper de Laravel asset() para construir la URL, apuntando al enlace simbólico del storage (Ej: asset('storage/fotografias/imagen.jpg')) [05:08].
- Si NO tiene Foto (Es nulo) ❌:
- Se anida una segunda condición para verificar el genero del miembro.
- Avatar Masculino 👨: Si el campo genero es "masculino", se carga la imagen por defecto guardada en public/images/avatar_hombre.jpg [10:23].
- Avatar Femenino 👩: Si el campo genero es "femenino", se carga la imagen por defecto guardada en public/images/avatar_mujer.jpg [11:29].
3️⃣ Diseño y Limpieza Final ✨
Se realizan pequeños ajustes para completar la vista SHOW:
- Se elimina el input de tipo file del formulario, ya que en la vista SHOW solo se requiere la visualización de la imagen, no su carga [07:20].
- La lógica de la visualización de datos de un registro individual (la función CRUD Read) está completa.
Lecciones
Inicio Rápido y Configuración del Proyecto 🚀
Lección 10. 10 Respondiendo preguntas en el curso de LARAVEL 10 - Sistema de control de asistencia
9 min
Arquitectura MVC y Gestión de Modelos 🏗️
Lección 2. 12 Creación del MODELO MVC en el curso de LARAVEL 10 - Sistema de control de asistencia
8 min
Sembrado de Datos y Visualización Básica 🗄️
Tablas Dinámicas y Experiencia de Usuario 📊
Lección 1. 19 Utilizar DataTables en el curso de LARAVEL 10 - Sistema de control de asistencia
18 min
Formulario de Creación y Seguridad de Datos 🛡️
Lección 2. 22 Respondiendo comentarios en el curso de LARAVEL 10 - Sistema de control de asistencia
10 min
Lección 3. 23 Validando el formulario en el curso de LARAVEL 10 - Sistema de control de asistencia
13 min
Notificaciones y Mensajes Personalizados 🎉
Consulta de Detalles y Gestión de Archivos 🖼️
Actualización y Eliminación (Update & Delete) 🔄
Módulos Secundarios y Funcionalidad Clave 🧩
Lección 3. 42 Modificando el DASHBOARD en el curso de LARAVEL 10 Sistema de control de asistencia
22 min
Reportes Profesionales, Roles y Despliegue Final 🛡️
Lección 2. 49 REPORTE entre 2 FECHAS en el curso de LARAVEL 10 Sistema de control de asistencia
23 min
Lección 4. 51 SEEDER roles y permisos en el curso de LARAVEL 10 Sistema de control de asistencia
12 min
Lección 7. 54 SEEDER USUARIOS por defecto en el curso de LARAVEL 10 Sistema de control de asistencia
13 min
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️