54 Módulo Doctores en el sistema de reservas de citas medicas LARAVEL(PHP-MySql) FullStack
Duración: 20 minDescripción
👨⚕️ Lección 54: Inicio del Módulo Doctores
Título del Video: 54 Módulo Doctores en el sistema de reservas de citas medicas LARAVEL(PHP-MySql) FullStack
1. 🤝 Definición de Relaciones de Usuario
El doctor, al ser un usuario del sistema que necesita acceder con credenciales, está relacionado con la tabla users.
- Relación en el Modelo User:
- Se añade la relación de uno a uno (hasOne) para vincular cada usuario con un doctor, similar a cómo se hizo con las secretarias [02:49].
- Función: doctor()
- Tipo de relación: hasOne(Doctor::class)
- Relación en el Modelo Doctor:
- Se define la relación que permite al doctor pertenecer a un usuario, lo que facilita acceder a los datos de login (correo y contraseña) del doctor.
- Función: user()
- Tipo de relación: belongsTo(User::class) [03:39].
2. 🗺️ Preparación de Vistas y Rutas
Se preparó la estructura de archivos necesaria y se definieron las rutas para el nuevo módulo.
- Creación de Vistas (.blade.php):
- Se crea el directorio doctores dentro de las vistas de admin.
- Se crean las cinco vistas básicas para el CRUD: index, create, show, edit y delete [04:47].
- Definición de Rutas:
- Se definen las rutas Resource para el DoctorController bajo el prefijo de admin, estableciendo las rutas para el listado, creación, visualización, edición y eliminación de doctores [05:44].
3. 📋 Implementación del Listado (Index)
Se implementó la lógica para mostrar la lista de doctores y se diseñó la tabla de visualización.
- Lógica del Controlador:
- En el método index del DoctorController, se realiza una consulta para obtener todos los doctores utilizando la relación with('user') [11:43]. Esto permite cargar simultáneamente los datos del doctor y los datos del usuario asociado (necesario para el correo electrónico).
- La variable $doctores resultante se pasa a la vista.
- Diseño de la Tabla:
- La tabla se copió y adaptó del módulo de Consultorios, ajustando las columnas a los datos del doctor:
- Nombres y Apellidos
- Teléfono
- Licencia Médica
- Especialidad
- Correo Electrónico
- Acciones
- Acceso a Correo Electrónico: Se demostró cómo acceder al correo electrónico, que reside en la tabla users pero está relacionado: $doctore->user->email [19:07].
- La tabla se copió y adaptó del módulo de Consultorios, ajustando las columnas a los datos del doctor:
La implementación se confirma con un registro de prueba creado manualmente en la base de datos para verificar que el listado y la consulta con la relación with('user') funcionan correctamente [17:33]. El siguiente paso será enfocarse en la acción de Creación (Create) de un doctor [20:05].
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! ❤️