62 Módulo PERMISOS de los roles en el curso de Sistema de Gestión escolar(PHP y MySql)FullStack

Duración: 14 min
Módulo: 🛡️ Módulo de Permisos (Base) Lección 1 de 2

Descripción

La Lección 62 marca el inicio del módulo final del curso: el Módulo de Permisos. Este módulo es fundamental para restringir y controlar el acceso de los diferentes usuarios (Estudiante, Docente, Administrador) a las diversas funcionalidades del sistema.

💾 Fase Inicial y Preparación

1. Commit de Versión

El video comenzó realizando un git commit para guardar todo el progreso de las lecciones anteriores (vistas de estudiante y docente, CRUD de Kardex). El proyecto fue actualizado en el repositorio de GitHub antes de comenzar el nuevo módulo.

2. Lógica de Permisos

El enfoque adoptado se basa en la lógica de frameworks robustos como Laravel (similar a la librería Spatie), donde la gestión de permisos se realiza mediante la asociación directa de los Roles con las Rutas o URLs a las que tienen acceso.

🛠️ Implementación del Módulo PERMISOS

1. Modelo de Base de Datos (Tabla permisos)

Se creó una nueva tabla de base de datos llamada permisos para almacenar las rutas del sistema y asignarlas a roles específicos.

CampoDescripciónTipoRelación
ID_permisoIdentificador único.PK-
nombre_urlUn nombre o alias corto para la ruta (ej. "cardex_listado").VARCHAR(100)-
URLLa ruta completa del sistema (ej. admin/cardex/index.php).TEXT-
rol_IDIdentificador del rol al que se aplica este permiso.FKTabla roles

2. Configuración de la Interfaz

  • Menú: Se añadió el enlace "Permisos" bajo el menú "Roles" en el sidebar de configuración [05:41].
  • Vista de Listado: Se creó el archivo roles/permisos.php para mostrar una tabla con los permisos registrados.
  • Consulta de Listado: La consulta para llenar esta tabla incluye un INNER JOIN para mostrar el nombre del rol al que pertenece cada permiso y está configurada para ordenar los permisos por el Nombre del Rol (ORDER BY rol.nombre_rol) [11:35].

Próximo Paso

La siguiente lección se centrará en la creación del formulario (create_permisos.php) necesario para registrar y asociar las rutas del sistema con los roles correspondientes en la nueva tabla permisos [13:58].