Фразы названия могут быть немного запутанными.У меня есть приложение, в котором есть пользователи с разными уровнями разрешений (администратор и не администратор).
Я не был уверен, какая из следующих конструкций предпочтительнее: просто перейдите с User_Profile и добавьте поле администратора или создайте две модели (один для администратора и один для)
class User_Profile(models.Model):
user=models.ForeignKey(User, unique=True)
employer=models.ForeignKey(Company,blank=True)
admin=models.BooleanField(default=False)
phone=models.CharField(blank=True)
Является ли это предпочтительным для создания отдельной таблицы для администраторов, которая просто ссылается на пользователя и работодателя через ForeignKeys?Мои представления будут проверять каждого пользователя на статус администратора, поэтому я был обеспокоен тем, что запросы к большой таблице User_Profile снова и снова могут стать дорогими.
Вероятно, не на стадии оптимизации, но мне просто интересно узнать о наилучшей практике.