5

geodjangoのインストール(Windows XP)とチュートリアルに従って、django1.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 OSX10.6で同じエラーが発生しました。どうやら、Geodjangoのドキュメントには、インストール方法に関する誤った/時代遅れの指示が記載されていました。Geodjangoを機能させるために、私はいくつかの手順に従いました。

  1. 現在、GeoDjango1.4はPostGIS2.0(GeoDjangoドキュメントの指示に従ったときにインストールされたHomebrewのバージョン)ではうまく機能しません。そのため、PostGIS1.5をインストールする必要がありました。私は次のターミナルコマンドを使用してこれを行いました(これが機能するには、Homebrewがインストールされている必要があります):

    brew tap homebrew/versions
    brew install postgis15
    brew untap homebrew/versions
    
  2. PostGIS 1.5は、PostGreSQL 9.2(Geodjangoのドキュメントの指示に従ったときにHomebrewがインストールしたバージョン)ではうまく機能しません。そこで、PostGreSQL9.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が9.2ではなくPostgreSQL9.1を実行していることを確認するためにいじくり回しました。'initdb / usr / local / var/postgres'を使用しました。

  5. 次に、データベースの構成を行う必要がありました。PostGISでテンプレートを設定し、データベースの「ロール」(/ user)を設定しました。これを行うために、私はGeodjangoドキュメントの指示に従いました。私は多くのエラーを受け取りましたが、それらをグーグルで検索し、解決策を非常に簡単に見つけました。

  6. その後、GeoDjangoは正常に動作し始めました!

このソースは私が見つけた最も役立つものであり、これらの問題のいくつかをより詳細にカバーする他の役立つURLへのリンクです:http://pragmaticstartup.wordpress.com/2012/09/26/installing-django-postgis-postgres-on -os-x-version-hell /

于 2013-01-08T17:54:13.977 に答える