Менеджер недоступен; 'auth.User' был заменен на 'accounts.User'

Я создал пользовательскую модель пользователя 'User' и объявил ее в settings.py как AUTH_USER_MODEL. Также у меня есть две другие модели consumer и workman, которые имеют отношения onetoone с моим пользовательским пользователем. Я создал две формы для регистрации потребителя и рабочего, но когда я заполняю форму (она даже не проверяет валидацию) и отправляю, она говорит: Manager is not available; 'auth.User' has been swapped for 'accounts.User'

models.py:

from django.contrib.auth.models import AbstractUser
from django.contrib.auth import  get_user_model

# Create your models here.

class User(AbstractUser):

    class Types(models.TextChoices):
        CONSUMER = "CONSUMER" , "Consumer"
        WORKMAN = "WORKMAN" , "Workman"
    type = models.CharField(max_length=20,choices=Types.choices,default=Types.WORKMAN)

    is_consumer = models.BooleanField(default=False)
    is_workman = models.BooleanField(default=False)

class Consumer(models.Model):
    user = models.OneToOneField(get_user_model(),on_delete=models.CASCADE,primary_key=True)
    location = models.CharField(max_length=100)

class Workman(models.Model):
    user = models.OneToOneField(get_user_model(),on_delete=models.CASCADE,primary_key=True)
    contact = models.CharField(max_length=100)

views.py:

from .forms import ConsumerCreationForm, WorkmanCreationForm
from .models import Workman,Consumer

class consumersignupview(CreateView):
    model = Consumer
    form_class = ConsumerCreationForm
    template_name = 'accounts/register.html'
    success_url = '/'


class workmansignupview(CreateView):
    model = Workman
    form_class = WorkmanCreationForm
    template_name = 'accounts/register.html'
    success_url = '/'

forms.py:

from django.contrib.auth.forms import UserCreationForm
from django import forms
from .models import Consumer,Workman

class ConsumerCreationForm(UserCreationForm):
    location = forms.CharField( max_length=100, required=False)
    class meta(UserCreationForm.Meta):
        model = Consumer
        
class WorkmanCreationForm(UserCreationForm):
    contact = forms.CharField(max_length=100)

    class meta(UserCreationForm.Meta):
        model = Workman

ошибка: enter image description here

полный отслеживание:

Эта ошибка является повторением этой проблемы. Скорее всего, вы импортируете где-то неправильную модель пользователя.

Вернуться на верх