55 Create Doctores en el sistema de reservas de citas medicas LARAVEL(PHP-MySql)FullStack
Duración: 15 minDescripción
👨⚕️ Lección 55: Creación de Doctores
Título del Video: 55 Create Doctores en el sistema de reservas de citas medicas LARAVEL(PHP-MySql) FullStack
1. 📝 Diseño de la Vista de Creación (create.blade.php)
La vista de creación del doctor se implementó copiando y adaptando el formulario de creación del módulo de Secretarias, ya que ambos requieren la creación simultánea de un registro de usuario.
- Ruta de Envío: El formulario está configurado para enviar los datos por el método POST a la ruta doctores.store [01:54].
Campos del Formulario: Los campos recopilados se dividen en dos secciones:
Campos de Doctor (Tabla doctors) Campos de Usuario (Tabla users) Nombres Correo Electrónico Apellidos Contraseña (y su confirmación) Teléfono Licencia Médica Especialidad
2. ⚙️ Lógica del Controlador (DoctorController.php)
El método store maneja el registro de datos en dos tablas diferentes (users y doctors) mediante las siguientes acciones:
A. Validación de Datos
Se realiza la validación de los campos obligatorios [08:14]:
- Campos Requeridos: nombres, apellidos, teléfono, licencia_médica y especialidad.
- Campos de Usuario:
- Correo electrónico (email): Debe ser único en la tabla users.
- Contraseña (password): Debe estar confirmada (confirmed).
B. Creación de Usuario
Se crea primero el registro en la tabla users [11:08]:
- Se instancia el modelo User ($user = new User();).
- Se asignan el name (Nombres), email (Correo electrónico) y la password.
- La contraseña se almacena de forma encriptada utilizando Hash::make().
- El nuevo usuario es guardado ($user->save();).
C. Creación de Doctor
Una vez que el usuario ha sido creado, se utiliza su ID para establecer la relación en la tabla doctors [12:15]:
- Se instancia el modelo Doctor ($doctor = new Doctor();).
- Se asigna el user_id ($doctor->user_id = $user->id;) para establecer la llave foránea que relaciona al doctor con sus credenciales.
- Se asignan los campos específicos del doctor (nombres, apellidos, teléfono, licencia_médica, especialidad).
- El registro del doctor es guardado ($doctor->save();).
D. Redirección y Mensaje
Finalmente, el usuario es redirigido al listado de doctores (doctores.index) con un mensaje de éxito: "Se registró al doctor de la manera correcta" [13:24].
La prueba final del registro confirma que el nuevo doctor aparece en el listado y que las dos tablas (users y doctors) han sido pobladas correctamente [14:10].
El próximo capítulo continuará con la acción de Visualización (Show) del módulo Doctores.
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! ❤️