Tabla: user
Modelo de usuario personalizado que hereda deAbstractBaseUser y PermissionsMixin.
Campos principales
| Campo | Tipo | Descripción |
|---|---|---|
| EmailField (unique) | Identificador único (USERNAME_FIELD) | |
| rol | CharField | Rol del usuario (choices: ROLES) |
| is_admin | BooleanField | Si es administrador |
| is_staff | BooleanField | Si puede acceder al admin |
| is_active | BooleanField | Si la cuenta está activa |
| responsable | OneToOneField | Relación opcional con Responsable |
Roles disponibles
Definidos enusuarios/roles.py:
sys_admin- Sys Adminauxiliar- Auxiliaradministracion- Administracióninvitado- Invitado
Método get_permisos()
Retorna lista de permisos según el rol del usuario desdeROLE_PERMISSIONS.
UserManager
Gestor personalizado que permite crear usuarios con email como identificador:create_user(email, password, responsable, **extra_fields)create_superuser(email, password, **extra_fields)
Roles y permisos
Guía completa de roles