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.

-~----------~----~----~----~------~----~------~--~---

Responder a