0

MacOS10.7でDjango1.2と最新バージョンのPostgres.appを使用しています。PointFieldを含むデータベースを作成するために実行manage.py syncdbすると、次のエラーが発生します。

Installing index for stores.Store model
Failed to install index for stores.Store model: operator class "gist_geometry_ops" does not exist for access method "gist"

これは、空間データベースを作成するために事前に使用しているPostgresコマンドです(以前にこの問題が発生した後)-いずれもエラーを生成しません。これは、PostGISが正常にセットアップされていることを示しています。

$ psql -d stores -U storeadmin
# CREATE EXTENSION postgis;
# ALTER TABLE geometry_columns OWNER TO storeadmin;
# ALTER TABLE spatial_ref_sys OWNER TO storeadmin;

少しグーグルをした後、Postgres.appにDjango1.2と互換性のないバージョンのPostGISが付属しているのではないかと思います。新しいDjangoにアップグレードする必要がありますか?または、古いPostGISにダウングレードする必要がありますか?その場合、どのように?

更新:このスレッドは、Django1.4でさえPostGIS2と互換性がないことを示唆しています。Postgres.appに古いバージョンを使用するように説得できますか?それとも、Postgres.appを完全に諦めるべきですか?

4

1 に答える 1

0

PostGIS 2.0 をサポートする GeoDjango 1.5 がリリースされました。この時点での最良のオプションは、アップグレードすることです。

于 2013-04-16T13:56:30.257 に答える