ModuleNotFoundError: Нет модуля с именем '_tkinter' Heroku
Я пытаюсь развернуть веб-приложение с помощью Heroku, оно развернулось, но при попытке открыть его выдает внутреннюю ошибку сервера.
Полный лог из heroku logs -t
выглядит следующим образом:
Я просмотрел некоторые другие решения, приведенные здесь, но все они используют либрацию matplotlib, в то время как мое не требует matplotlib, и я также не упомянул его в файле requirements.txt
, но он устанавливается при развертывании на heroku.
Я знаю, что heroku не поддерживает _tkinter
. Что еще я могу сделать, чтобы он работал правильно?
python version:3.8.8
При необходимости я могу предоставить более подробную информацию.
После внимательного чтения лог-файла, вот что я рекомендую сделать для чистого развертывания.
Пока venv активирован и вы находитесь в директории проекта (где живут manage.py
), сделайте следующее:
- Откройте файл requirements.txt
- Удалите ненужные модули из файла requirements.txt
- Удалите ненужные модули с помощью
pip uninstall module
- Теперь запустите
pip freeze requirements.txt
- Деактивируйте venv
- Затем добавьте
requirements.txt
в контроль исходного кодаgit add -A
- Зафиксируйте свои изменения
git commit -m "deleted unneeded modules"
.
- Если у вас уже существует приложение Heroku, подключитесь к нему с помощью кнопки
heroku git:remote -a myapp
- Deploy,
git push heroku master