3

私は geodjango を初めて使用します。次の設定があります。

DATABASES = {
    "default" : {
        'ENGINE': 'django.contrib.gis.db.backends.postgis', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'dbname',                      # Or path to database file if using sqlite3.
        'USER': 'django',                      # Not used with sqlite3.
        'PASSWORD': 'somepass',                  # Not used with sqlite3.
        'HOST': '127.0.0.1',                      # Set to empty string for localhost. Not used with sqlite3.
        'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
    }
}

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.gis',
    'django.contrib.admin',
    'django.contrib.admindocs',
    'django.contrib.gis',
    "app.core",
)

次のコマンドでデータベースを作成しました。

postgres@rewitaqia:~$ createdb -U postgres -T template_postgis -O django dbname

しかし、データベースを同期しようとすると、次のように表示されます。

django.core.exceptions.ImproperlyConfigured: Cannot determine PostGIS version for database "dbname". GeoDjango requires at least PostGIS version 1.3. Was the database created from a spatial database template?

また、psqlでこれを試すと、db tasがpostgisテンプレートから実際に作成されていないようです:

db_name=# select postgis_lib_version();
ERROR:  no existe la función postgis_lib_version()
ŘÁDKA 1: select postgis_lib_version();
                ^
DOPORUČENÍ:  Ninguna función coincide en el nombre y tipos de argumentos. Puede desear agregar conversión explícita de tipos.

とにかく読んでくれてありがとう。

4

1 に答える 1

5

ヴィジャン、

初めて PostGIS をセットアップしたとき、あなたと同じ質問がたくさんあったので、PostGIS のセットアップについて詳しく説明した記事を作成しました。私自身の記事を挿入して申し訳ありませんが、セットアップ プロセスの文書化に役立つように作成しました。 http://www.chicagodjango.com/blog/geo-django-quickstart/

上記の質問を見ると、問題が何であるかを正確に判断するのは困難です。ただし、リストされているPostGISエラーを生成する可能性があることを確認してください。

  • すべての適切なシステム依存関係がインストールされていますか? 記事のステップ 1 を参照してください。
  • postgis_template スキーマを作成したときに、コマンドを実行して地理空間データベース オブジェクトを作成しましたか (添付リンクのステップ 2 を参照)。
  • かなり新しいバージョンの PostGIS がインストールされていますか? https://docs.djangoproject.com/en/dev/ref/contrib/gis/install/#spatial-databaseで最小要件を確認してください。

とにかく、これが役立つことを願っています。ジョー

于 2012-08-22T03:47:42.910 に答える