Django.core.exceptions.ImproperlyConfigured: Ошибка при загрузке модуля psycopg: нет модуля с именем psycopg
В настоящее время я пытаюсь настроить Django для использования в проекте, и я сталкиваюсь с постоянной ошибкой при попытке запустить python manage.py syncdb
.
File "/x/x/x/x/x/x/base.py", line 23, in ?
raise ImproperlyConfigured("Error loading psycopg module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg module: No module named psycopg
Другие обсуждения подобной проблемы, которые я нашел как здесь, так и на других сайтах, были решены пользователем, загружающим и устанавливающим psycopg, но если я не пропущу что-то критическое, я сделал это несколько раз. Я загрузил tarball, распаковал его на своем сервере, запустил python setup.py build
и python setup.py install
с помощью --prefix, направляя его на мой существующий Python Path... Я могу пойти и перейти к папке и посмотреть различные файлы psycopg, но по какой-то причине, когда я пытаюсь синхронизировать свой новый проект с базой данных, он не может найти psycopg и, как результат, не будет разговаривать с db.
Примечания: учетная запись hostmonster.com, попробовала несколько версий релиза psycopg2.
Ответы
Ответ 1
У меня тоже была ошибка; хотя psycopg2
был установлен в моей системе с помощью apt-get
, мой virtualenv не смог его найти:
>>> import psycopg2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named psycopg2
Это было исправлено с помощью pip install psycopg2-binary
внутри virtualenv (или pip install psycopg2
для версий <2.8 psycopg2).
Ответ 2
Попробуйте использовать это:
sudo apt-get install python-psycopg2
Ответ 3
У меня была эта проблема на virtualenv
в Ubuntu 18.4. Я решил это, установив psycopg2 v2.7.4:
pip install psycopg2==2.7.4
Ответ 4
Вы пытаетесь загрузить psycopg, а не psycopg2.
Убедитесь, что для параметра ENGINE установлено значение django.db.backends.postgresql_psycopg2 в файле settings.py вашего проекта:
'ENGINE': 'django.db.backends.postgresql_psycopg2'
Может быть проблема: 32-разрядная версия Python не может загрузить 64-битную версию psycopg2.
Ответ 5
У меня была эта проблема внутри виртуальной среды python (virtualenv), скопировав библиотеку в сайт-пакет среды из пакетов системных сайтов, эта проблема решила проблему.
Ответ 6
Я также получал похожую ошибку, это просто означает, что он не может найти пакет/модуль "psycopg2". Я решил это, просто установив его в моей среде с помощью команды:
pip install psycopg2
Ответ 7
Первый:
pip uninstall psycopg2
Затем загрузите прямой файл с http://www.stickpeople.com/projects/python/win-psycopg/
file name : = psycopg2-2.6.2.win-amd64-py2.7-pg9.5.3-release.exe
Согласно вашему требованию, а затем скопируйте этот загруженный файл в папку env и сделайте следующее:
easy_install psycopg2-2.6.2.win-amd64-py2.7-pg9.5.3-release.exe(your file name)
Это скопирует необходимые файлы.
Ответ 8
ОШИБКА: не удалось установить пакеты из-за ошибки EnvironmentError: [Errno 13] Отказано в доступе: '/usr/local/lib/python3.7/dist-packages/psycopg2' Рассмотрите возможность использования опции --user
или проверьте разрешения.
если вышеупомянутая ошибка показывает тогда, пожалуйста попытайтесь установить с:
pip install psycopg2-binary --user
Тогда это наконец работает. Нет необходимости редактировать на DATABASE ENGINE.
Ответ 9
Это может произойти, если у вас еще не установлен psycopg2
.
У меня была эта проблема с virtualenv, я просто установил psycopg2
, и он работает нормально. Не нужно редактировать конфигурации БД.
pip install psycopg2