PyCharm не распознает экземпляр пользователя при использовании пользовательской модели пользователя в Django

У меня есть пользовательская модель пользователя в моем проекте Django, и когда я создаю экземпляр request.user в моих представлениях, PyCharm, похоже, не распознает экземпляр пользователя правильно. Доступные методы/атрибуты, предложенные PyCharm, по-прежнему указывают на встроенную модель пользователя Django, но не на мою новую модель.

Есть ли способ установить это правильно?

Пример:

# settings.py

AUTH_USER_MODEL = 'user.UserProfile'
# models.py custom user model

class UserProfile(AbstractBaseUser, PermissionsMixin):

    # Email and name of the user
    email = models.EmailField(max_length=255, unique=True)
    name = models.CharField(max_length=255)

    # Privilege and security booleans
    is_staff = models.BooleanField(default=False)
    is_superuser = models.BooleanField(default=False)
    is_active = models.BooleanField(default=False)
    email_confirmed = models.BooleanField(default=False)

    # Company on whose behalf the user acts on
    company = models.ForeignKey('company.Company', on_delete=models.CASCADE, blank=True, null=True)

    objects = UserProfileManager()

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = []

    def email_user(self, subject, message, from_email=None, **kwargs):
        """Send mail to user - Copied from original class"""
        send_mail(subject, message, from_email, [self.email], **kwargs)

    def __str__(self):
        return self.email
# views.py

def render_dashboard_benefits(request):

    # Get current user instance
    current_user = request.user


    # Typing...
    current_user.company

    # Pycharm suggests 'first_name' and 'last_name' depending on the initial user model
    # but not e.g. "email" or "company" according to the new user model

    return render(request, 'test.html')

Я использую платную версию PyCharm.

Вы можете использовать следующим образом.

current_user: UserProfile = request.user
Вернуться на верх