2012-02-20 4 views
1


Я пытаюсь настроить Postgresql 9.1 в Django 1.3.
Примечание: Я делаю это в Ubuntu 11.10 (oneric). Также у меня есть postgis 1.5, установленный для работы с Postgresql 9.1
Настройка базы данных Postgresql 9.1 в Django для ubuntu 11.10

Насколько я знаю, я установил все необходимые зависимости.
Я также читал инструкции от this.

На выполнив следующие действия:

python manage.py syncdb 

Я получаю этот стек ошибок.

Traceback (most recent call last): 
    File "manage.py", line 23, in <module> 
    execute_manager(settings) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 438, in execute_manager 
    utility.execute() 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 379, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 261, in fetch_command 
    klass = load_command_class(app_name, subcommand) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 67, in load_command_class 
    module = import_module('%s.management.commands.%s' % (app_name, name)) 
    File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module 
    __import__(name) 
    File "/usr/local/lib/python2.7/dist-packages/south/management/commands/__init__.py", line 10, in <module> 
    import django.template.loaders.app_directories 
    File "/usr/local/lib/python2.7/dist-packages/django/template/loaders/app_directories.py", line 23, in <module> 
    raise ImproperlyConfigured('ImportError %s: %s' % (app, e.args[0])) 
django.core.exceptions.ImproperlyConfigured: ImportError {ProjectName}.{ModuleName}: No module named postgresql.operations 

В local_settings.py, я поставил имя двигателя как 'django.db.backends.postgresql_psycopg2'.

Однако после того, как со ссылкой на this я установил имя двигателя до «django.contrib.gis.db.backends.postgis», я получаю следующее сообщение об ошибке: стек

Traceback (most recent call last): 
    File "manage.py", line 23, in <module> 
    execute_manager(settings) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 438, in execute_manager 
    utility.execute() 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 379, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 261, in fetch_command 
    klass = load_command_class(app_name, subcommand) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 67, in load_command_class 
    module = import_module('%s.management.commands.%s' % (app_name, name)) 
    File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module 
    __import__(name) 
    File "/usr/local/lib/python2.7/dist-packages/south/management/commands/__init__.py", line 10, in <module> 
    import django.template.loaders.app_directories 
    File "/usr/local/lib/python2.7/dist-packages/django/template/loaders/app_directories.py", line 21, in <module> 
    mod = import_module(app) 
    File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module 
    __import__(name) 
    File "/home/jigish/jigbox/dev/mangrove/datawinners/datawinners/../datawinners/accountmanagement/__init__.py", line 3, in <module> 
    from datawinners.accountmanagement.post_registration_events import ngo_user_created 
    File "/home/jigish/jigbox/dev/mangrove/datawinners/datawinners/../datawinners/accountmanagement/post_registration_events.py", line 3, in <module> 
    from datawinners.accountmanagement.models import NGOUserProfile 
    File "/home/jigish/jigbox/dev/mangrove/datawinners/datawinners/../datawinners/accountmanagement/models.py", line 5, in <module> 
    from django.db import models 
    File "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 78, in <module> 
    connection = connections[DEFAULT_DB_ALIAS] 
    File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 93, in __getitem__ 
    backend = load_backend(db['ENGINE']) 
    File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 51, in load_backend 
    raise ImproperlyConfigured(error_msg) 
django.core.exceptions.ImproperlyConfigured: 'django.contrib.gis.db.backends.postgis' isn't an available database backend. 
Try using django.db.backends.XXX, where XXX is one of: 
    'dummy', 'mysql', 'oracle', 'postgresql_psycopg2', 'sqlite3' 
Error was: No module named postgresql.operations 

Я даже обеспечил, у меня есть установлен постгид (Postgresql-9.1-postgis).

Куда я иду не так? Что мне не хватает? Это мои первые дни работы с Python, Django и Postgresql и Postgis.
Просьба указать любые полезные полезные ссылки в Интернете. Я попробовал Google, но до сих пор не добился успеха.

Спасибо и наилучшими пожеланиями

+0

"Насколько я знаю, я установил всю необходимую зависимость.". Пожалуйста, уточните это. Вы установили psycopg2? Можете ли вы опубликовать список пакетов (apt и python), которые вы установили с версиями? TYIA – jpic

+0

Это уже упоминается в ссылке, упомянутой в моем вопросе. Еще повторяю. gdal-bin binutils libgeos-3.2.2 libgeos-c1 libgeos-dev libgdal1-1.8.0 libgdal1-dev libxml2 libxml2-dev libxml2-dev proj psycopg2 == 2.4.1. –

+0

В каком ты списке? Как насчет моих вопросов относительно установки psycopg2? – jpic

ответ

1

Вы должны использовать «django.contrib.gis.db.backends.postgis» в качестве внутреннего интерфейса, что это точно; согласно the official installation guide.

Я думаю, что вы можете подать там документацию, потому что в документации не упоминается ubuntu 11.10.

+0

Я выполнил руководство по установке. Однако руководство по установке предназначено для пользователей Ubuntu 10.10 и ниже. Я также хочу сообщить вам, что обычные шаги установки работают нормально до Ubuntu 11.04. Поэтому я пробовал это за 11.10. –

Смежные вопросы