Я хочу использовать postgresql с django, поэтому сделал следующее:
sudo apt-get install libpq-dev python-dev
sudo apt-get update
workon myenv
sudo pip install psycopg2
И после настройки моего settings.py
правильно, я бегу
./manage.py syncdb
Но возникает исключение:
django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: No module named psycopg2
Конфигурация базы данных:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'mydb',
'USER': 'postgres',
'PASSWORD': 'password1234',
'HOST': 'localhost',
'PORT': '',
}
}
Установка с помощью sudo (sudo pip install ...
) приводит к тому, что установленные файлы принадлежат пользователю root, и Django (запускаемый без sudo) не может их прочитать. Ты можешь sudo pip uninstall psycopg2
а затем установить без sudo. (Если это не сработает, попробуйте sudo chown -R $USER ~/.virtualenvs/myvenv
сначала (предполагается, что это ваш путь virtualenv).