Django.db.utils.OperationalError: нет такой таблицы: MainApp_user, когда я пытаюсь создать суперпользователя

Я делаю веб-приложение, и почти в конце процесса разработки решил настроить модель пользователя, чтобы сделать страницу профиля со многими другими данными. Недавно я нашел видео, где объясняется пример из документации django, и я сделал тот же код, что и там, но сначала я удалил свой файл db.sqlite3 и теперь, когда я пытаюсь создать суперпользователя, я всегда получаю следующую ошибку: django.db.utils.OperationalError: no such table: MainApp_user

Вот мой models.py:

class MyUserManager(BaseUserManager):
    def create_user(self, username, password):
        if not username:
            raise ValueError("Mailname field is empty")
        if not password:
            raise ValueError("You have to set password")

        user = self.model(
            username=username, 
            )
        user.set_password(password)
        user.save(using=self._db)
        return user


class User(AbstractBaseUser):
    username            = models.CharField(max_length=30, unique=True)
    password            = models.CharField(max_length=64)

    name                = models.CharField(max_length=30, blank=True)
    surname             = models.CharField(max_length=30, blank=True)  
    
    avatar              = models.ImageField(width_field=512, height_field=512)

    email_link          = models.CharField(max_length=64, blank=True, null=True)
    bio                 = models.CharField(max_length=512, blank=True, null=True)
    
    registered          = models.DateField(auto_now_add=True)

    USERNAME_FIELD      = "username"
    REQUIRED_FIELDS     = ['password']
    objects             = MyUserManager()

    def __str__(self):
        return self.username

Также я добавил следующую переменную в settings.py:

AUTH_USER_MODEL = "MainApp.User"

Почему возникает эта ошибка и как ее решить, помогите пожалуйста.

***Объективно, я сделал миграции в базу данных

Я нашел решение. В моем случае, когда я удалил файл db.sqlite3, я также удалил папку "migrations" в приложении. Конечно, я создал ее снова, но проблема была в том, что я забыл добавить init.py в папку migrations. И django после применения миграций сделал только системные таблицы в базе данных (auth_users, contenttypes и другие), мои собственные модели он не сохранил. Так что если вы когда-нибудь столкнетесь с подобной проблемой, помните о init.py в папке migrations.

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