geodjango 同步数据库错误。来自 geodjango 教程
Posted
技术标签:
【中文标题】geodjango 同步数据库错误。来自 geodjango 教程【英文标题】:geodjango syncdb errors. From geodjango tutorial 【发布时间】:2011-04-03 19:11:43 【问题描述】:我已经按照 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吗?为什么它不工作?我是新手,我正在努力学习,因此我们将不胜感激。
【问题讨论】:
你能确定你安装了psycopg
吗?
【参考方案1】:
问题是,在settings.py
'django.db.backends.postgis'
应该是
django.contrib.gis.db.backends.postgis
应该这样做。
【讨论】:
【参考方案2】:按照 geodjango 网站上的说明并使用 Homebrew 安装软件包后,我在 Mac OS X 10.6 上遇到了同样的错误。显然,Geodjango 文档给出了一些关于如何安装它的不正确/过时的说明。为了让 Geodjango 工作,我遵循了几个步骤:
目前,GeoDjango 1.4 与 PostGIS 2.0(这是我按照 GeoDjango 文档中的说明安装的 Homebrew 版本)不兼容。所以,我需要安装 PostGIS 1.5。我使用以下终端命令执行此操作(为此,您必须安装 Homebrew):
brew tap homebrew/versions
brew install postgis15
brew untap homebrew/versions
PostGIS 1.5 无法与 PostGreSQL 9.2 配合使用(这是我按照 Geodjango 文档的说明安装的 Homebrew 版本)。所以,我安装了 PostGreSQL 9.1。我完全忘记了我用来安装 PostGreSQL 9.1 的 Homebrew 命令,但它们应该与上一步类似。
在我的情况下,前面的步骤不足以让 Geodjango 运行。当我再次尝试在 Django 中运行“syncdb”时,我在终端中发现了一个新错误:
django.core.exceptions.ImproperlyConfigured: Error loading psycopg module:
No module named psycopg
我最初认为我的 psycopg2 和 PostgreSQL9.1 副本不在我的 PYHTONPATH 上,所以我添加了它们。我还摆弄了一下以确保 django 运行的是 PostgreSQL 9.1 而不是 9.2。我使用了“initdb /usr/local/var/postgres”。
然后我需要做一些数据库配置。我在 PostGIS 中设置了一个模板,并为数据库设置了一个“角色”(/用户)。为此,我按照 Geodjango 文档中的说明进行操作。我收到了很多错误,但谷歌搜索并很容易找到解决方案。
然后 GeoDjango 开始正常工作了!
此来源是我发现的最有用的来源,并链接到其他有用的网址,这些网址更详细地涵盖了其中一些问题:http://pragmaticstartup.wordpress.com/2012/09/26/installing-django-postgis-postgres-on-os-x-version-hell/
【讨论】:
以上是关于geodjango 同步数据库错误。来自 geodjango 教程的主要内容,如果未能解决你的问题,请参考以下文章
为啥它在运行迁移时抛出`GeoDjango Postgis 要求不满足得到错误?
将 Django 连接到 PostgreSQL 数据库 (GeoDjango)
带有 Postgis Geodjango 安装的 Postgresql
使用 django.contrib.gis.measure.D 时 GeoDjango dwithin 错误
Geode / GemFire无法创建gemfireCache bean错误:Spring Boot v2.1.3-GemFire启动器1.1.0.RELEASE