I have 3 different account types in a Django project. Should I use 1 or 3 apps?
I'm new to Django. I've been making a project with 3 types of accounts: Schools, professors and users. But I feel like some things would be too "repetitive" like some model fields and views the views. I thought that having 3 apps would be too much, so I decided to delete them and create a single app as "accounts" where I manage schools, professors and users as 3 separate classes in models.py. Is this a good option? I'm kind of not sure
maintain a common User models those have common filed for login and signup like email , role username password etc..,then create separte models for school,proffesor,students with onetoone relation to the user,thats a good production grade approach with the field for proffesor and student may differ so you can normalise the table
Yes, your option is a common and great option for managing user types in Django. Adding 3 apps is kind of repetitive, and it also increases how much code you have to manage over time, possible locations for vulnerabilities, and server load. It is OK to store 3 user types in one models.py (also that is what I do too, and my project's almost done and working fine).