Django solo es compatible con un modelo de autenticación único, que se mantiene en la configuración.AUTH_USER_MODEL.
El enfoque correcto aquí es definir un modelo AUTH base que herede de django.auth.contrib.AbstractBaseUser; podrías llamar a este modelo Persona.
El Estudiante y el Profesor heredarían de Persona, dando a ambas entidades la capacidad de autenticarse.
- ¿Cuál es el mejor formato de imagen para usar en una página web para obtener la máxima calidad y la mínima velocidad?
- ¿Qué porcentaje de usuarios de Internet usan JavaScript? ¿Es seguro fingir que los usuarios que no usan JavaScript no existen al diseñar su sitio web?
- ¿Por qué se usa Javascript principalmente para el desarrollo web?
- ¿Qué debo aprender como desarrollador front-end del framework ASP.NET MVC? Soy nuevo en .Net MVC, entonces, ¿es suficiente aprender bootstrap? ¿Cuáles son los controles de interfaz de usuario más utilizados en .net MVC y los controles de interfaz de usuario que necesito aprender? ¿Son suficientes HTML y HTML helper?
- ¿Cuáles son algunas áreas desafiantes en el desarrollo web?
Otro enfoque que vale la pena considerar es un enfoque basado en roles. En este escenario, tendría un modelo de persona (utilizado para la autenticación) al que se le asigna un rol, ya sea estudiante o profesor en su ejemplo.
Los nombres Estudiante y Profesor indican que su objetivo es tener diferentes niveles o autorizaciones, no autenticación.
Espero que ayude. Siéntase libre de hacer más preguntas si no me han autorizado. Golpeé esta respuesta rápidamente en mi teléfono.