5

我已经按照 geodjango 安装(windows XP)和教程完善了我正在运行 django 1.2 当我进入 syncdb 并运行时,我收到以下信息。

    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' 作为替代方案但随后我收到以下回复:

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

当我尝试 posgresql 时:

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

它不应该是我成功下载并安装的postgis吗?为什么它不工作?我是新手,我正在努力学习,所以任何帮助都将不胜感激。

4

2 回答 2

25

问题是,在settings.py

'django.db.backends.postgis'

它应该是

django.contrib.gis.db.backends.postgis

应该这样做。

于 2010-08-26T13:13:02.957 回答
1

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

  1. 现在,GeoDjango 1.4 不能很好地与 PostGIS 2.0(这是我按照 GeoDjango 文档中的说明安装的 Homebrew 版本)配合使用。所以,我需要安装 PostGIS 1.5。我使用以下终端命令执行此操作(为此,您必须安装 Homebrew):

    brew tap homebrew/versions
    brew install postgis15
    brew untap homebrew/versions
    
  2. PostGIS 1.5 不能很好地与 PostGreSQL 9.2(这是我按照 Geodjango 文档的说明安装的 Homebrew 版本)配合使用。所以,我安装了 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 中设置了一个模板,并为数据库设置了一个“角色”(/用户)。为此,我按照 Geodjango 文档中的说明进行操作。我收到了很多错误,但谷歌搜索并很容易找到解决方案。

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

这个来源是我发现的最有用的来源,并链接到其他有用的 url,更详细地涵盖了其中一些问题:http: //pragmaticstartup.wordpress.com/2012/09/26/installing-django-postgis-postgres-on -os-x-版本-地狱/

于 2013-01-08T17:54:13.977 回答