1054, Исключение "Неизвестная колонка" при добавлении несуществующего поля в Django 4.0

Я столкнулся с проблемой добавления дополнительного поля. Я хочу, чтобы оно было булевым, но на самом деле не имеет значения, какого типа будет поле, потому что я также пытался создать целочисленное поле вместо булевого и получил то же самое исключение.

Исключение, которое я получаю, следующее:

django.db.utils.OperationalError: (1054, "Unknown column 'salary_profile.confirmation_link_sent' in 'field list'")

А вот модель, о которой я говорю, с уже добавленным полем в последней строке:

class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True)
    birth_date = models.DateField(null=True)
    employment_date = models.DateField(null=True)
    position = models.ForeignKey('Position', on_delete=models.PROTECT, null=True)
    attestation_date = models.DateField(blank=True, null=True)
    dismiss_date = models.DateField(blank=True, null=True)
    photo = models.ImageField(blank=True, null=True, upload_to=user_directory_path)
    email_is_confirmed = models.BooleanField(default=False)
    confirmation_link_sent = models.BooleanField(default=False)

Эта проблема встречается как в sqlite, так и в mysql.

Пока единственными ответами на проблему, которые я нашел в интернете, были "удалить всю базу и начать заново", что, мягко говоря, смешно, а также добавление этого поля вручную в саму базу данных. Но я не вижу в этом решения, потому что если представить, что завтра мне нужно будет добавить 20 таких полей, то мне придется делать и эти ручные добавления?

И я должен добавить, что многие ответы возвращают к django 1.7 и подобным, ссылаясь на команду syncdb, которая больше не существует.

Проблема странная сама по себе, потому что она говорит мне, что "этого поля не существует". Ну, конечно, не существует, потому что я хочу добавить его в первую очередь.
Что мне делать?

И если это имеет значение: любая другая модель работает нормально, если я добавляю туда это поле. Так что я готов поспорить, что если вы попытаетесь воспроизвести проблему, вы будете делать миграции, не сталкиваясь с какими-либо проблемами.

Думаю, мне нужно добавить дополнительную информацию по этому вопросу. Скажите, что я должен принести на стол.

Спасибо. Я сделал запрос к базе данных в forms.py. В середине трассировки указал на эту форму, в которой был запрос. Проблема была решена.

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