Я использую пользовательскую модель со встроенными и пользовательскими бэкэндами аутентификации.значение по умолчанию для входа в систему по имени пользователя и паролю и пользовательское для входа в систему на основе uid. Вход в систему работает нормально, но «пользователь» (кроме суперпользователя) недоступен в шаблоне. Нет, last_login обновляется в базе данных.Вот мой код
backend.py
from support.models import CustomUser
class UsernameIdModelBackend(object):
def authenticate(self, request, uid=None):
try:
user= CustomUser.objects.get(uid=uid)
return user
except CustomUser.DoesNotExist:
return None
def get_user(self, user_id):
try:
return CustomUser.objects.get(pk=user_id)
except CustomUser.DoesNotExist:
return None
models.py
from django.db import models
# Create your models here.
from django.contrib.auth.models import AbstractUser
class CustomUser(AbstractUser):
uid = models.CharField(max_length=50)
Где я ошибся ..
РЕДАКТИРОВАТЬ:
Я использовал, если user.is_authenticated перед «пользователь».После снятия условия if я вижу AnonymousUser.