2010-08-25 57 views
5

我遵循geodjango安装(windows XP)和教程来完善 我正在运行django 1.2 当我到达syncdb并运行时,我收到以下内容。geodjango syncdb错误。从geodjango教程

raise ImproperlyConfigured(error_msg) 
django.core.exceptions.ImproperlyConfigured:'django.db.backends.postgis' isn 
an available database backend. 
Try using django.db.backends.XXX, where XXX is one of: 
    'dummy', 'mysql', 'oracle', 'postgresql', 'postgresql_psycopg2', 'sqlite3 
Error was: No module named postgis.base 

我试图改变为 'django.db.backends.postgresql_psycopg2' 作为替代 但后来我收到这样的响应:当我尝试posgresql

AttributeError: 'DatabaseOperations' object has no attribute 'geo_db_type' 

**raise ImproperlyConfigured("Error loading psycopg module: %s" % e) 
django.core.exceptions.ImproperlyConfigured: Error loading psycopg module: No mo 
dule named psycopg** 

是不是假设d是我成功下载和安装的postgis?为什么它不工作?我是新的,我正在努力学习,所以任何帮助将不胜感激。

+0

你能确保你安装了'psycopg'? – 2010-08-25 16:22:47

回答

25

的问题是,在settings.py

'django.db.backends.postgis' 

它应该是

django.contrib.gis.db.backends.postgis 

应该这样做。

1

我按照geodjango站点上的说明和使用Homebrew安装的软件包后,在Mac OS X 10.6上遇到同样的错误。显然,Geodjango文档给出了关于如何安装它的一些不正确/过时的说明。为了使GeoDjango内置的工作,我也跟着几个步骤:

  1. 眼下,GeoDjango内置1.4没有发挥好与PostGIS的2.0(这是当我跟着GeoDjango内置文档中的说明家酿安装的版本)。所以,我需要安装PostGIS 1.5。我这样做是使用下面的终端命令(这个工作,您必须安装自制软件):

    brew tap homebrew/versions 
    brew install postgis15 
    brew untap homebrew/versions 
    
  2. 的PostGIS 1.5没有发挥好与PostgreSQL的9.2(这是当我跟着家酿安装的版本Geodjango文档的说明)。所以,我安装了PostGreSQL 9.1。我完全忘记了我用来安装PostGreSQL 9.1的Homebrew命令,但它们应该与上一步类似。

  3. 在我的情况下,先前的步骤不足以让Geodjango运作。当我试图再次运行在Django“执行syncdb”,我在码头发现了一个新的错误:

    django.core.exceptions.ImproperlyConfigured: Error loading psycopg module: 
    No module named psycopg 
    
  4. 我最初以为我psycopg2和PostgreSQL9.1的副本是不是我的PYHTONPATH,所以我加了他们。我也弄了一下,以确保django运行的是PostgreSQL 9.1而不是9.2。我用'initdb/usr/local/var/postgres'。

  5. 然后我需要做一些数据库配置。我在PostGIS中设置了一个模板,并为数据库设置了一个“角色”(/ user)。为此,我按照Geodjango文档中的说明进行操作。我收到了很多错误,但Google搜索了它们,很容易找到解决方案。

  6. 然后GeoDjango开始正常工作!

这个来源是最有用的一个,我发现并链接到涵盖其中的一些问题进行更详细的其他有用的网址:http://pragmaticstartup.wordpress.com/2012/09/26/installing-django-postgis-postgres-on-os-x-version-hell/