Не удается выполнить миграцию для моей пользовательской модели пользователя

Привет, ребята, у меня такая проблема с моими миграциями django, когда я пытаюсь создать пользовательскую модель пользователя для моего сайта

Итак, что происходит, когда я запускаю миграцию, она выдает ошибку, говорящую:-

ValueError: Поле admin.LogEntry.user было объявлено с ленивой ссылкой на 'user.newuser', но приложение 'user' не предоставляет модель 'newuser'. Поле user.UserInfo.user было объявлено с ленивой ссылкой на 'user.newuser', но приложение 'user' не предоставляет модель 'newuser'.

Я изо всех сил пытался отладить его, но ничего не получается, я также следовал ответу на stack overflow, но это тоже не помогло Я реализовал все, что нужно, так что да, остальное - остальное, и вот мой код вместе с файлом миграций

модели:-

class CustomAccountManager(BaseUserManager):

    def create_user(self, first_name, last_name, phone_number, email, password, 
**other_fields):

        if not email:
            raise ValueError(_('You must provie an email address'))

        if not first_name:
            raise ValueError(_('You must provide a first name'))

        if not last_name:
            raise ValueError(_('You must provide a last name'))

        email = self.normalize_email(email)
        user = self.model(email=email, first_name=first_name, last_name=last_name, 
phone_number=phone_number, **other_fields)
        user.set_password(password)
        return user

    def create_superuser(self, email, first_name, last_name, phone_number, password, 
**other_fields):
        other_fields.setdefault('is_staff', True)
        other_fields.setdefault('is_superuser', True)
        other_fields.setdefault('is_active', True)

        if other_fields.get('is_staff') is not True:
            raise ValueError(_('Superuser must be assigned to is_staff=True'))

        if other_fields.get('is_active') is not True:
            raise ValueError(_('Superuser must be assigned to is_active=True'))

        if other_fields.get('is_superuser') is not True:
            raise ValueError(_('Superuser must be assigned to is_superuser=True'))

        self.create_user(email, first_name, last_name, password, phone_number, 
**other_fields)

class NewUser(AbstractBaseUser, PermissionsMixin):
    first_name = models.CharField(max_length=200, null=True, blank=True)
    last_name = models.CharField(max_length=200, null=True, blank=True)
    email = models.EmailField(max_length=200, null=True, blank=True, unique=True)
    password = models.CharField(max_length=200,null=True, blank=True)
    confirm_password = models.CharField(max_length=200, null=True, blank=True)
    phone_number = models.CharField(max_length=10,null=True, blank=True)
    address = models.TextField(null=True, blank=True)
    pin_code = models.CharField(null=True, max_length=6, blank=True)
    region = models.CharField(null=True, max_length=200, blank=True)
    state = models.CharField(null=True, max_length=100, blank=True)
    start_date = models.DateField(default=timezone.now)
    is_staff = models.BooleanField(default=False)
    is_active = models.BooleanField(default=False)

    objects = CustomAccountManager()

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = ['first_name', 'last_name', 'phone_number']

    def __str__(self):
        return self.first_name + ' ' + self.last_name

Миграции:-

class Migration(migrations.Migration):

dependencies = [
    ('auth', '0012_alter_user_first_name_max_length'),
    ('user', '0015_delete_newuser'),
]

operations = [
    migrations.CreateModel(
        name='NewUser',
        fields=[
            ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
            ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')),
            ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')),
            ('first_name', models.CharField(blank=True, max_length=200, null=True)),
            ('last_name', models.CharField(blank=True, max_length=200, null=True)),
            ('email', models.EmailField(blank=True, max_length=200, null=True, unique=True)),
            ('password', models.CharField(blank=True, max_length=200, null=True)),
            ('confirm_password', models.CharField(blank=True, max_length=200, null=True)),
            ('phone_number', models.CharField(blank=True, max_length=10, null=True)),
            ('address', models.TextField(blank=True, null=True)),
            ('pin_code', models.CharField(blank=True, max_length=6, null=True)),
            ('region', models.CharField(blank=True, max_length=200, null=True)),
            ('state', models.CharField(blank=True, max_length=100, null=True)),
            ('start_date', models.DateField(default=django.utils.timezone.now)),
            ('is_staff', models.BooleanField(default=False)),
            ('is_active', models.BooleanField(default=False)),
            ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.group', verbose_name='groups')),
            ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.permission', verbose_name='user permissions')),
        ],
        options={
            'abstract': False,
        },
    ),
]

настройки:-

apps-

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'home.apps.HomeConfig',
'pages.apps.PagesConfig',
'user.apps.UserConfig',
'reservation.apps.ReservationConfig',
]

вызов новой модели пользователя-

AUTH_USER_MODEL = 'user.NewUser'

Изменение пользовательской модели в середине проекта представляет собой сложную ситуацию, если вы пытаетесь переопределить существующую пользовательскую модель с помощью NewUser. Для этого вам придется написать пользовательскую миграцию, чтобы перенести все данные из текущей таблицы User в таблицу NewUser, а затем безопасно сбросить таблицу User.

Если это не так, и вы только что начали проект, не стесняйтесь отказаться от текущей базы данных и make migrations снова после изменения модели пользователя по умолчанию в settings.py (вы уже это делаете). Также убедитесь, что все импорты в других файлах не датированы, чтобы использовать вашу модель NewUser вместо модели по умолчанию django User.

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