【发布时间】:2014-02-02 22:02:24
【问题描述】:
我正在尝试这样做:
python3.3 manage.py runserver
在我的 Django 项目文件夹中。我收到此错误消息:
File "/usr/local/lib/python3.3/site-packages/django/db/backends/postgresql_psycopg2/base.py", line 25, in <module>
raise ImproperlyConfigured("Error loading psycopg2 module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: No module named 'psycopg2'
我在 settings.py 中的设置如下:
DATABASES = {
'default': {
'ENGINE':'django.db.backends.postgresql_psycopg2',
'NAME': 'test_databas',
'USER': 'postgre',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '5432',
}
}
我已经用 Python3.3 下载了 psycopg2。文件 /usr/local/lib/python3.3/site-packages/django/db/backends/postgresql_psycopg2/base.py 也存在。但是,Python 认为我没有名为 psycopg2 的模块。我试过这个:
$ python3.3
Python 3.3.3 (default, Feb 2 2014, 14:32:49)
[GCC 4.6.3] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import psycopg2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'psycopg2'
>>>
我还按照here 的建议更改了我的 sys.path。
我是新手,非常感谢您的帮助。
【问题讨论】:
-
您的
postgresql_psycopg2版本是什么? Python 3.3 支持来自 Psycopg 2.5 和更高版本。你可以从initd.org/psycopg -
我尝试使用 python 和命令行检查我的版本(我使用 apt-get 安装它),但它只是告诉我我没有名为 psycopg2 的模块。
-
您可能使用包管理器安装了错误的
psycopg2模块。请参阅我的回答。