django таблица не имеет столбца с именем Exception - PullRequest
0 голосов
/ 15 февраля 2020

Git Репозиторий Запрос, чтобы помочь мне, что делать.

Я работаю на сайте электронной коммерции с помощью Django. и я новичок в Django На следующем рисунке представлена ​​таблица моей базы данных. Помогает добавить товар

enter image description here

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

enter image description here

Произошла ошибка при переносе

enter image description here

Запрос о том, что делать.

Ответы [ 3 ]

1 голос
/ 15 февраля 2020

После первых миграций, если вы добавляете любое поле, которое не может быть пустым, вы должны указать значение по умолчанию. Ваше поле des c не имеет значения null, поэтому вы должны добавить default='some_value' в ваше поле des c.

0 голосов
/ 15 февраля 2020

Посмотрите здесь (Django Рабочий процесс миграции)

Я видел вашу папку миграций в вашем репозитории Github, и не было никаких признаков каких-либо из упомянутых вами полей .

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

python manage.py makemigrations <app name>
python manage.py migrate

Эти команды будут изменять ваши таблицы.

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


РЕДАКТИРОВАТЬ:

В вашей модели продукта есть поле с именем desc. Вам нужно установить значение по умолчанию для него; В противном случае вам необходимо обновить записи в вашей базе данных вручную.

desc = models.CharField(max_length=300, default='')

После того, как вы это сделаете, эта ошибка произойдет и с полем pub_date. Таким образом, если ваши текущие объекты Product в вашей базе данных не важны, вы можете просто удалить файл базы данных db.sqlite3 и удалить файл миграции с этого адреса shop/migrations/0001_initial.py и снова попробовать команды миграции.

0 голосов
/ 15 февраля 2020

У вас есть готовый стол? Поскольку ошибка говорит о том, что есть таблица с именем shop_product, но у нее нет столбца с именем product_name.

Таким образом, структура вашей таблицы приблизит нас к решению вашей проблемы.

Редактировать:

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

...