django.core.exceptions.ImproperlyConfigured:加载psycopg模块时出错:没有名为psycopg的模块

问题描述 投票:36回答:7

目前,我正在尝试将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 buildpython setup.py install,并将--prefix指向我现有的Python Path ...我可以去导航到该文件夹​​并查看各种psycopg文件,但无论出于何种原因,当我尝试让我的新项目与数据库同步时,它找不到psycopg,因此不会与数据库通信。

注意:hostmonster.com帐号,已经尝试了psycopg2的多个发行版本。

python django module psycopg2 django-manage.py
7个回答
36
投票

我也有错误;虽然使用psycopg2在我的系统上安装了apt-get,但我的virtualenv找不到它:

>>> import psycopg2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named psycopg2

通过在virtualenv中做一个pip install psycopg2来解决这个问题。


9
投票

试着用这个:

sudo apt-get install python-psycopg2

7
投票

我在Ubuntu 18.4中的virtualenv上遇到了这个问题。我通过安装psycopg2 v2.7.4解决了这个问题:

pip install psycopg2==2.7.4

6
投票

你试图加载psycopg,而不是psycopg2。确保ENGINE在项目的settings.py中设置为django.db.backends.postgresql_psycopg2:

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

可能的问题是:32位版本的Python无法加载64位版本的psycopg2。


3
投票

我在python虚拟环境(virtualenv)中遇到了这个问题,将库从系统站点包复制到环境的site-package解决了这个问题。


3
投票

我也收到类似的错误,它只是意味着它无法找到“psycopg2”包/模块。我只是通过使用以下命令在我的环境中安装它来解决它:

pip install psycopg2


1
投票

第一:

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
投票

错误:由于EnvironmentError导致无法安装软件包:[Errno 13]权限被拒绝:'/ usr / local / lib / python3.7 / dad-packages / psycopg2'考虑使用--user选项或检查权限。

如果上面的错误显示,请尝试安装:

pip install psycopg2-binary --user

然后它终于奏效了。无需在DATABASE ENGINE上进行编辑。

© www.soinside.com 2019 - 2024. All rights reserved.