Почему Django не находит поле, добавленное в AbstractBaseUser

Я унаследовал от AbstractBaseUser следующее:

class User(AbstractBaseUser):
    """
    Main User model, inherits from AbstractBaseUser
    """
    # Meta
    email = models.EmailField(verbose_name='email', max_length=60, unique=True)
    username = models.CharField(max_length=40, unique=True)  # equals to email
    date_joined = models.DateTimeField(verbose_name='date joined', auto_now_add=True)
    last_login = models.DateTimeField(verbose_name='last login', auto_now=True)
    employee_of = models.OneToOneField(Customer, on_delete=models.SET_NULL, null=True)

Таким образом, каждый пользователь связан с одним и только одним клиентом.

Теперь в представлении я хочу получить доступ к экземпляру текущего вошедшего пользователя в объекте request и получить значение employee_of, чтобы получить набор запросов, содержащий всех пользователей этого клиента.

def render_employees(request):
    """
    Renders the employees page of the dashboard
    :param request:
    :return:
    """
    # Return the value for the current site for css specific classes
    dashboard_site = 'employees'

    # Query the employees
    qs_employees = User.objects.filter(employee_of=request.user.employee_of)  # doesn't find field

...

Однако фильтр не работает, потому что request.user.employ_of ничего не возвращает. Моя IDE даже предлагает, например, username, date_joined и т.д., но не employee_of,

Почему?

class Customer(models.Model):
    """
    A table that stores static data about a customer, usually a legal company
    """
    legal_name = models.CharField(max_length=50)
    street = models.CharField(max_length=30)
    street_number = models.CharField(max_length=3)

    def __str__(self):
        return self.legal_name

Похоже, что request.user - это другая модель. Это модель User из django.contrib.auth. https://docs.djangoproject.com/en/4.0/ref/contrib/auth/#django.contrib.auth.models.User.

Что вы можете с этим сделать? В нашем приложении у нас есть модель UserProfile, которая имеет отношение OnetoOne к django User. Вы можете хранить значение employee_of там.

class UserProfile(AbstractBaseUser):
    user = models.OnetoOneField("auth.User", related_name="user_profile", on_delete=models.CASCADE)
    employee_of = models.OneToOneField(Customer, on_delete=models.SET_NULL, null=True)

и затем получить доступ к request.user сотрудникам, используя что-то вроде

request.user.user_profile.employee_of
Вернуться на верх