Pues yo no acabo de entender tu pregunta. A ver, por ahí arriba te han respondido muy bien al tema de ROL- PERMISO. Un rol no es más que un conjunto de permisos, así pues, un profesor es un usuario con permiso de lectura a notas, escritura a notas de sus materias y sus clases, etc. Yo lo que haría en tu caso es hacer un xml de relacion de acciones con permisos necesarios, de esta forma cuando llegas a la accion consultas los permisos que necesita, recoges el rol del usuario, recorres los permisos que tiene y si todos los que la acción necesita están pues adelante, en caso contrario, redirección a acción informativa.
De esta forma puedes crearte roles infinitos. Que tienes un rol profesor que tiene N permisos y necesitas otro con N+1? Pues creas un rol nuevo llamado pepito con permiso X y se lo asignas al profe. Que quieres que un usuario tenga los roles administrador, profesor y conejillo de indias? pues te creas un rol nuevo con todos los permisos necesarios. On 8 mayo, 21:30, P3140 <[EMAIL PROTECTED]> wrote: > Hola, el sistema para los roles ya está hecho, y funciona así: > Tengo la tabla "personas", con su respectivo modelo y sus respectivas > funciones (login, logout, etc), tengo la tabla "roles" con su > respectivo modelo también. > > El modelo "Persona" está asociado con "Rol" de la forma > "hasAndBelongsToMany", y se relacionan mediante la tabla > "personas_roles". > > Entonces en la base de datos se vería algo como esto: > > Personas Roles > personas_roles > ======= ===== > =========== > Rut: 00.0000.000-0 rol_id: 1 > rut:00.000.000-0+rol_id:1 > password:12345 descripcion: Administrador > rut:00.000.000-0+rol_id:2 > nombre: John Smith > etc {. . .} rold_id: 2 > descripcion: Profesor > > Esto ya lo tengo funcionando de manera correcta. > > Ahora la duda que tengo es cómo tratar a los derivados de "Persona" > (Docente, Administrador, Alumno, Apoderado, etc...). > Estaba pensando que debería crear por ejemplo un modelo llamado > "Docente", que fuera una especie de derivado de persona (haciendo > herencia talvez?). > > Buscando en google me encontré con que lo que quiero hacer se llama > "Single-table inheritance", y por desgracia aún no está implementado > en CakePHP, pero está contemplado para el futuro. > > Bueno, creo que ahora está un poco mejor explicada mi consulta, > gracias por contestar. > > Saludos. --~--~---------~--~----~------------~-------~--~----~ Has recibido este mensaje porque estás suscrito a Grupo "CakePHP-es" de Grupos de Google. Si quieres publicar en este grupo, envía un mensaje de correo electrónico a CakePHP-es@googlegroups.com Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED] Para obtener más opciones, visita este grupo en http://groups.google.com/group/CakePHP-es?hl=es. -~----------~----~----~----~------~----~------~--~---