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を完全に諦めるべきですか?