Джанго - Почему я получаю эту ошибку программирования - PullRequest
0 голосов
/ 02 октября 2019

Django - Почему я получаю эту ошибку программирования, когда я нигде не объявил переменную shop_product. Пожалуйста, помогите Нажмите здесь, чтобы посмотреть ошибку Изображение

пожалуйста, обратитесь к этому изображению ошибки

Ответы [ 2 ]

0 голосов
/ 02 октября 2019

Из частичного SQL-запроса на изображении кажется, что "shop_product" - это таблица. Примечание:

LINE 1: ... "shop_product"."id" FROM "shop_product"
  1. Проверьте свои модели, если у вас есть модель ShopProduct, и проверьте, обновлены ли у вас миграции.
  2. Проверьте, есть ли у вас поля ManyToMany, которые могут создать эту таблицу,а также проверьте актуальность миграций.
0 голосов
/ 02 октября 2019

shop_product - это имя таблицы базы данных для модели Product в приложении shop.

Наиболее вероятной причиной этой ошибки является то, что вы не применяли миграцию базы данных, или,если вы это сделали, то не добавили приложение shop в INSTALLED_APPS.

Обновление:

Согласно одному из ваших комментариев, выпытаясь использовать SQLite, который вы не можете использовать в Heroku, см. https://devcenter.heroku.com/articles/sqlite3

Но, кажется, вы поняли это, потому что в соответствии с настройками вашего приложения вы используете PostgreSQL, но вы не применили свою миграцию,

Миграции создаются один раз с manage.py makemigrations, но вы должны применять их к каждой базе данных, т. Е. Как в локальной среде разработчика, так и в той базе данных, которую использует ваше приложение, работающее на Heroku. Для последнего попробуйте это:

heroku run python manage.py 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...