GeoDjango チュートリアルに従って、自宅のマシン (OSX 10.8.2 を実行している Mac Mini) でプロジェクト用の開発空間 DB をセットアップしています。チュートリアルのOSX セクションで説明されているように、KyngChaos パッケージ (UnixImageIO、PROJ、GEOS、SQLite3、および GDAL) と Spatialite をインストールしました。
Spatialite を介してデータベースを作成しましたがpython manage.py sqlall world
、モデルを確認しようとすると、次のエラーが発生します。
django.core.exceptions.ImproperlyConfigured: The pysqlite library does not support C extension loading. Both SQLite and pysqlite must be configured to allow the loading of extensions to use SpatiaLite.
この問題についてはそれほど多くはありません (特に OSX については何もありません)。ほとんどの解決策では、オプションなしで pysqlite をインストールしdefine=SQLITE_OMIT_LOAD_EXTENSION
ます (例:ここ)。Spatialite 2.3.1 と 2.4 の両方を試してみました。パッチを適用して pysqlite を virtualenv にインストールしましたが、常に同じ問題が発生します。
spatialite
バイナリとバイナリの両方sqlite3
が適切に実行されているようで、django 用の非空間 sqlite データベースのセットアップも正常に機能するため、SQLite 自体に問題があるとは思えません。
これを機能させる方法に関するヒントは素晴らしいでしょう。ありがとう。