36 Cargar datos en el formulario para UPDATE en LARAVEL 10-Sistema de control de asistencia

Duración: 13 min
Módulo: Actualización y Eliminación (Update & Delete) 🔄 Lección 3 de 6

Descripción

🎬 Lección 36: ✏️ Rellenar el Formulario para Actualizar Datos (UPDATE)

Enlace del Video: https://youtu.be/pYiogoXxg2Y

💡 Objetivo:

Crear y rellenar la vista edit.blade.php con los datos del miembro actual, preparando el formulario para que se envíe al método update de Laravel.

1️⃣ Ajustes Estéticos y Reutilización de la Vista 🎨

Para diferenciar visualmente la operación de edición de la de creación, se realizan cambios clave:

  • Copia de Estructura: Se copia todo el contenido de create.blade.php a la nueva vista edit.blade.php [01:00].
  • Título: El título se cambia a "Actualización de datos del miembro" [01:21].
  • Color de la Tarjeta: Se cambia la clase del card de primary a success (verde) para indicar una operación de actualización [02:15].
  • Botón: El texto del botón se cambia a "Actualizar Registro" y su clase se define como btn-success [02:30].

2️⃣ Carga de Datos en los Campos del Formulario 💾

Dado que el controlador (MiembrosController) ya está enviando la variable $miembro a la vista, se utiliza esta información para rellenar cada campo:

  • Campos de Texto: El valor actual se inyecta en el atributo value de cada input utilizando la sintaxis de Laravel [03:43]:

    HTML

    value="{{ $miembro->nombre_apellido }}"

    Se aplica el mismo principio para email, telefono, fecha_nacimiento, ministerio y direccion [04:15].

  • Campos Condicionales (Género): Para los radio buttons de género, se utiliza una sentencia @if para determinar qué opción debe tener el atributo checked [05:19].

3️⃣ Lógica de Visualización de la Fotografía 📸

Se reutiliza la lógica del video anterior para mostrar la imagen, pero con un ajuste importante:

  • Se copia el bloque condicional del show.blade.php que decide si mostrar la fotografía cargada o el avatar por defecto según el género [06:29].
  • Esta lógica se inserta dentro del área del output del componente de carga de archivos. Esto permite que la imagen existente o el avatar predeterminado se muestren primero, pero sean automáticamente reemplazados por la previsualización si el usuario selecciona un nuevo archivo para subir [07:42].

4️⃣ Configuración de la Ruta de UPDATE 🔄

Se ajusta la etiqueta <form> para que el envío de datos apunte al método de actualización:

  • Método: Aunque el formulario se envía por POST, Laravel requiere el método PUT o PATCH para la actualización, lo que se logra con la directiva @method('PUT') (o @method('PATCH')) [08:59].
  • Acción: La acción del formulario se dirige a la ruta resource miembros.update, pasándole el ID del miembro actual como parámetro:

    HTML

    <form action="{{ route('miembros.update', $miembro->id) }}" method="POST" ...>

5️⃣ Estructura del Controlador ⚙️

Finalmente, se define la estructura inicial del método que procesará la actualización en el MiembrosController:

  • Se crea la función public function update(Request $request, $id) [10:15].
  • Esta función recibe dos parámetros esenciales: los datos del formulario (Request $request) y el $id del registro que se va a modificar, el cual es fundamental para asegurar que se actualice el registro correcto [11:29].