OperationalError в Django при обновлении модели

Я сталкиваюсь с OperationalError при обновлении модели в существующем проекте Django.

Вот мои установленные приложения в настройках

INSTALLED_APPS = [
    "django.contrib.admin",
    "django.contrib.auth",
    "django.contrib.contenttypes",
    "django.contrib.sessions",
    "django.contrib.messages",
    "django.contrib.staticfiles",
    "admin1_app.apps.Admin1AppConfig",
]

Это код в админке

from django.contrib import admin
from admin1_app.models import Product
class Product_admin(admin.ModelAdmin):
    list_display=["product_name","product_price","product_qty","product_category"]
admin.site.register(Product,Product_admin)

models.py

from django.db import models
class Product(models.Model):
    product_name=models.CharField(max_length=30)
    product_price=models.IntegerField()
    product_qty=models.IntegerField()
    product_category=models.CharField(max_length=35)
    def __str__(self):
        return self.product_name

Изначально была создана программа только с 3 колонками, т.е. product_name, product_price, product_qty, и все было сделано правильно. Позже я добавил product_category в этот существующий проект и также выполнил команды makemigrations и migrate. Но у меня возникла OperationalError.

OperationalError at /admin/admin1_app/product/
(1054, "Unknown column 'admin1_app_product.product_category' in 'field list'")
Request Method: GET
Request URL:    http://127.0.0.1:8080/admin/admin1_app/product/
Django Version: 4.1.2
Exception Type: OperationalError
Exception Value:    
(1054, "Unknown column 'admin1_app_product.product_category' in 'field list'")
Exception Location: C:\Users\narendra\anaconda3\lib\site-packages\pymysql\err.py, line 143, in raise_mysql_exception
Raised during:  django.contrib.admin.options.changelist_view
Python Executable:  C:\Users\narendra\anaconda3\python.exe
Python Version: 3.9.12

Я попробовал использовать команду python manage.py migrate --fake. Я не знаю, как она работает, но просто скопировал ее из другого решения подобной ошибки в Stack Overflow, однако результата нет. Я даже попробовал удалить файл 0001_initial.py в папке migrations, а затем повторил команду makemigrations, но все равно безрезультатно.

Просто вы можете выполнить миграцию вручную, используя следующую команду:

python3 manage.py makemigrations appname

python3 manage.py sqlmigrate appname 0001

python3 manage.py migrate

И посмотрим, решит ли это

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