Short version: You don’t.
Your site may have 2 types of user - but that doesn’t mean you have 2 user models. The user model is primarily for determining authentication; authorisation can be handled separately.
So - set up a user model the way you normally would; then define a Teacher model and and Student model, each with a OneToOneKey to User. The user logs in, and you can determine what type of user they are by looking for the existence of a “teacher” or “student” attribute. You can then perform permission checks etc as appropriate by looking for user.student.<some property> or user.teacher.<some property>.
As a side effect, this also allows for the edge case where a student is *also* a teacher - e.g., at a university, I might be studying business while teaching computer science.
Yours,
Russ Magee %-)