django.core.exceptions.ImproperlyConfigured: Ошибка при загрузке модуля psycopg: модуль с именем psycopg отсутствует - PullRequest
37 голосов
/ 23 ноября 2011

В настоящее время я пытаюсь настроить 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 ... Я могу перейти к папке и просмотреть различные файлы psycopg, но по какой-то причине, когда я пытаюсь синхронизировать мой новый проект с базой данных, он не может найти psycopg и, как следствие, не будет общаться с БД.

Примечания: учетная запись hostmonster.com, пробовавшие несколько версий psycopg2.

Ответы [ 8 ]

36 голосов
/ 15 марта 2014

У меня тоже была ошибка;хотя 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). </p>

9 голосов
/ 25 июля 2014

Попробуйте использовать это:

sudo apt-get install python-psycopg2
8 голосов
/ 31 мая 2018

У меня была эта проблема на virtualenv в Ubuntu 18.4. Я решил это, установив psycopg2 v2.7.4:

pip install psycopg2==2.7.4
6 голосов
/ 23 ноября 2011

Вы пытаетесь загрузить psycopg, а не psycopg2.Убедитесь, что для ENGINE установлено значение django.db.backends.postgresql_psycopg2 в файле settings.py вашего проекта:

'ENGINE': 'django.db.backends.postgresql_psycopg2'

Может быть проблема в следующем: 32-битная версия Python не может загрузить 64-битную версию psycopg2.

3 голосов
/ 30 августа 2018

Я также получил похожую ошибку, это просто означает, что он не может найти пакет / модуль "psycopg2" Я решил это, просто установив его в моей среде с помощью команды:

pip install psycopg2

3 голосов
/ 10 марта 2012

У меня была эта проблема в виртуальной среде python (virtualenv), копирование библиотеки в пакет site-site из системных пакетов site решило проблему.

1 голос
/ 14 марта 2018

Первый:

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)

Это скопирует необходимые файлы.

0 голосов
/ 03 июня 2019

ОШИБКА: не удалось установить пакеты из-за ошибки EnvironmentError: [Errno 13] Отказано в доступе: '/usr/local/lib/python3.7/dist-packages/psycopg2' Рассмотрите возможность использования опции --user или проверьте разрешения.

, если появляется вышеуказанная ошибка, попробуйте установить с:

pip install psycopg2-binary --user

Тогда, наконец, это работает.Нет необходимости редактировать на DATABASE ENGINE.

...