django, postgres 8.4, psycopg 2.2.2, python 2.7, mod_wsgi - PullRequest
2 голосов
/ 03 сентября 2010

Я установил django / postgres на локальный сервер django и работает нормально. Я пытаюсь заставить работать Apache. Я настроил mod_wsgi и смог получить «Hello World» и перезапустить Apache. Я почти там, но когда я поднимаю localhost / index.html, я получаю эту ошибку сервера:

TemplateSyntaxError: Caught ImproperlyConfigured while rendering: 
'django.db.backends.postgresql_psycopg2' isn't an available database 
backend. 
[Thu Sep 02 13:46:30 2010] [error] [client 127.0.0.1] Try using 
django.db.backends.XXX, where XXX is one of: 
[Thu Sep 02 13:46:30 2010] [error] [client 127.0.0.1]     'dummy', 
'mysql', 'oracle', 'postgresql', 'postgresql_psycopg2', 'sqlite3' 
[Thu Sep 02 13:46:30 2010] [error] [client 127.0.0.1] Error was: 
cannot import name utils 

Возможно ли, что mod_wsgi и версия psycopg несовместимы? Кто-нибудь пробовал этот тип установки?

Обновление 1:

Я понижен до версии 2.6, mod_wsgi, psycopg2 и все еще получаю эту ошибку в файле журнала apache.

Пт, сент. 03 12:17:41 2010] [ошибка] Файл [client 97.80.165.181] "C: \ Python26 \ Lib \ сайт-пакеты \ Джанго \ дб \ __ init__.py", строка 77, в [пт сент. 03 12:17:41 2010] [ошибка] [клиент 97.80.165.181] соединение = соединения [DEFAULT_DB_ALIAS] [пт сен 03 12:17:41 2010] [ошибка] [клиент 97.80.165.181] Файл "C: \ Python26 \ lib \ site-packages \ django \ db \ utils.py", строка 91, в getitem [пт 03 сентября 12:17:41 2010] [ошибка] [клиент 97.80.165.181] backend = load_backend (дБ ['ENGINE']) [пт сент. 03 12:17:41 2010] [ошибка] [клиент 97.80.165.181] Файл "C: \ Python26 \ lib \ site-packages \ django \ db \ utils.py", строка 49, в load_backend [пт сент. 03 12:17:41 2010] [ошибка] [клиент 97.80.165.181] повысить ImproperlyConfigured (error_msg) [пт 03 сентября 12:17:41 2010] [ошибка] [клиент 97.80.165.181] TemplateSyntaxError: Поймано неправильно настроено во время рендеринг: 'Django.db.backends.postgresql_psycopg2' недоступна база данных базы данных. [Пятница, 03 сентября, 12:17:41 2010] [ошибка] [клиент 97.80.165.181] Попробуйте использовать django.db.backends.XXX, где XXX один из: [пт 3 сентября 12:17:41 2010] [ошибка] [клиент 97.80.165.181]
'dummy', 'mysql', 'oracle', 'postgresql', 'postgresql_psycopg2', 'sqlite3' [Пт, сент. 03 12:17:41 2010] [ошибка] [клиент 97.80.165.181] ошибка был: не может импортировать имена утилит

Вы знаете, что это может означать?

Обновление 2:

Причина в файле django / db / backends / postgresql_psycopg2 / base.py, версия 2.2.2, строка № 9: из утилиты импорта django.db

Но я все еще не знаю, как это исправить. Есть файл django / db / utils.py, поэтому он должен работать. И это работает для сервера разработки, в конце концов. Но не для Apache + mod_wsgi

1 Ответ

1 голос
/ 03 сентября 2010

Может быть этот Билет поможет вам:

или что бы то ни было, я подтвердил, что если я понижу Python до 2,6, а затем аналогично понижаю mod_wsgi и psycopg2, Django будетработать с Postgres на Apache как положено

...