Django App на Heroku с использованием psycopg2 - невозможно запустить локально - не удается обнаружить модуль
Пытаюсь реализовать приложение django с базой данных postgresql на heroku, с psycopg2 в качестве бэкенда.
(На основе исследований, которые я сделал, psycopg3 выглядит так, как будто он не совсем создан для этой цели).
Мое приложение работает, без проблем запущено в консоли heroku/heroku, и подключается к db нормально.
Но при запуске локально (python manage.py runserver) оно просто не может обнаружить модуль psycopg2. Я переустановил модуль в venv и из venv. Я пробовал бинарную установку, также использовал метод -pep517.
Я видел здесь тему о том, что более новые версии python могут быть несовместимы, но там не было никаких конкретных доказательств, насколько я могу судить.
Что вы можете посоветовать по этому поводу, или, возможно, предложить лучший адаптер бэкенда для Django + postgres?
Ниже приведены соответствующие части settings.py в директории проекта django:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': '*db info here'
...more db creds
}
}
и ошибка:
File "C:\*userdirectory*\djangenv\Lib\site-packages\django\db\backends\postgresql\base.py", line 24, in <module>
import psycopg2 as Database
File "C:\*userdirectory*\djangenv\Lib\site-packages\psycopg2\__init__.py", line 51, in
<module> from psycopg2._psycopg import ( # noqa
ImportError: DLL load failed while importing _psycopg: The specified module could not be
found.
Итак... Это сработало после понижения версии до Python 3.10. Надо было попробовать раньше lol