44 UPDATE Pacientes en el sistema de reservas de citas medicas LARAVEL(PHP-MySql) FullStack

Duración: 9 min
Módulo: 🤒 Gestión de Pacientes Lección 10 de 11

Descripción

🔄 Lección 44: Implementación de la Función UPDATE para Pacientes

Título del Video: 44 UPDATE Pacientes en el sistema de reservas de citas medicas LARAVEL (PHP-MySql) FullStack

Esta lección se enfoca en completar la funcionalidad de actualización (Update) para el módulo de Pacientes, implementando la lógica en el método update del PacienteController.

1. 💻 Lógica del Controlador (PacienteController.php - Método update)

El método update recibe dos parámetros: el objeto Request con los datos del formulario y el $id del paciente a modificar [01:16].

A. Validación de Datos

La validación es similar a la función store, pero con una adaptación crucial para los campos que deben ser únicos:

  • Búsqueda Excluida: Para los campos CI, Número de Seguro y Correo (correo), se utiliza la sintaxis especial de la regla Unique de Laravel que excluye el ID del registro que se está actualizando [01:35].
    • Esto permite que un usuario mantenga su propio CI o correo sin que el sistema lo marque como duplicado, pero previene que use el CI o correo de otro paciente ya registrado.
    • Ejemplo de sintaxis: 'ci' => 'required|unique:pacientes,ci,' . $id (donde $id es el identificador del paciente actual) [02:26].

B. Actualización del Registro

  1. Obtener el Modelo: Se utiliza el ID recibido para buscar y obtener el objeto Paciente a actualizar [04:02].
  2. Asignación de Atributos: Se actualizan todos los campos del modelo con los datos validados del formulario ($request->...) [04:08].
  3. Guardado: Se ejecuta el método $paciente->save() para persistir los cambios en la base de datos [04:12].

C. Redirección y Mensaje

  • Se redirige al usuario a la vista de listado (admin.pacientes.index).
  • Se muestra un mensaje de éxito: "Se actualizó al paciente de la manera correcta" [04:18].

2. ✅ Prueba de la Funcionalidad

El instructor realiza una prueba exitosa, modificando varios campos de un paciente (incluyendo los únicos) para demostrar que la actualización funciona correctamente y que la validación se aplica de forma adecuada cuando se intenta usar un campo único ya existente en otro registro [05:22].

3. 🗑️ Introducción a la Acción DELETE

Al finalizar el Update, el instructor comienza a trabajar en la última acción del CRUD: destroy (Eliminar) [05:54].

  • Función confirm_delete: Se crea una nueva función en el controlador, confirmDelete, la cual se encarga de buscar el registro por ID y retornar la vista de confirmación (delete.blade.php) [06:20].
  • Diseño de la Vista: La vista delete.blade.php se copia de la vista show, pero se modifica su estilo a color "danger" (rojo) y el mensaje pregunta al usuario si está "seguro de eliminar este registro" [07:34].

El próximo capítulo implementará la función destroy para completar el CRUD del módulo de Pacientes [08:31].