Менеджер недоступен в django [duplicate]
Мой вид регистра выглядит следующим образом.
class UserRegisterView( FormView ):
template_name = 'register.html'
form_class = UserCreationForm
redirect_authenticated_user = True
success_url = reverse_lazy('dashboard') # name of URL
def form_valid( self, form ):
user = form.save()
if user is not None:
login( self.request, user )
return super( UserRegisterView, self ).form_valid( form )
def get( self, *args, **kwargs ):
if self.request.user.is_authenticated:
return redirect('register')
return super( UserRegisterView, self ).get( *args, **kwargs )
Моя модель выглядит следующим образом.
from django.db import models
from django.contrib.auth.models import AbstractUser
# Create your models here.
class User(AbstractUser):
GENDER_CHOICES = (
('M', 'Male'),
('F', 'Female'),
('O', 'Other'),
)
USER_TYPE = (
('S', 'Super Admin'),
('A', 'Admin'),
('P', 'Patient'),
('D', 'Doctor'),
('U', 'User'),
)
first_name = models.CharField(max_length=255)
last_name = models.CharField(max_length=255)
date_of_birth = models.DateField(null=True, blank=True )
gender = models.CharField(max_length=1, choices=GENDER_CHOICES)
user_type = models.CharField(max_length=1, choices=USER_TYPE)
username = models.EmailField(unique=True)
email = models.EmailField(unique=True)
phone = models.CharField(max_length=15, blank=True, null=True)
address = models.TextField(blank=True, null=True)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
active = models.BooleanField(default=True)
REQUIRED_FIELDS = []
def __str__(self):
return f"{self.first_name} {self.last_name}"
Я получаю ошибку Manager isn't available; 'auth.User' has been swapped for 'hospital.User'
Я проверил этот пост и применил решение, но снова получаю ту же ошибку.
Вот полный трассировочный бэкграунд.
AttributeError at /register/
Менеджер недоступен; 'auth.User' был заменен на 'hospital.User'
Метод запроса: POST URL-адрес запроса: http://127.0.0.1:8000/register/. Версия Django: 5.0.2 Тип исключения: AttributeError Значение исключения:
Менеджер недоступен; 'auth.User' был заменен на 'hospital.User'
Exception Location: /home/foysal/.local/lib/python3.10/site-packages/django/db/models/manager.py, строка 196, in get. Поднято во время выполнения: hospital.views.UserRegisterView Исполняемый файл Python: /usr/bin/python Версия Python: 3.10.12 Python Path:
['/home/foysal/Documents/pYtHoN/hospital_management', '/usr/lib/python310.zip', '/usr/lib/python3.10', '/usr/lib/python3.10/lib-dynload', '/home/foysal/.local/lib/python3.10/site-packages', '/usr/local/lib/python3.10/dist-packages', '/usr/lib/python3/dist-packages']
Время сервера: Tue, 14 May 2024 06:52:53 +0000