GeoDjango Tips
GeoDjangoのドキュメントを元にTipsを説明します。

GeoDjango Model API

Djangoのデータモデルに、地理空間データの点・線・面・ラスターのフィールド等を拡張してデータ操作します。
  • GeometryField
  • PointField
  • LineStringField
  • PolygonField
  • RasterField

GeoDjango Database API

データベースのバックエンドとして、PostGIS、MySQL、Oracle, SpatiaLiteをサポートし、 空間演算やデータ変換出力等をします。
  • django.contrib.gis.db.backends.postgis
  • django.contrib.gis.db.backends.mysql
  • django.contrib.gis.db.backends.oracle
  • django.contrib.gis.db.backends.spatialite
Spatial Lookups
Database functions

GeoDjango Forms API

マップ表示できるFormやWidgets機能があります。 デフォルトでは、NASAのWMSレイヤーを使用してOpenLayersマップを使用しています。

Widget classes

  • BaseGeometryWidget
  • OpenLayersWidget
  • OSMWidget

GIS QuerySet API Reference

GeometryFieldとRasterFieldに対してのクエリーを可能にしています。

Geographic Database Functions

データベースに対しての関数を提供されてます。

Measurement Objects

距離と面積の単位を簡単に表現できるオブジェクトです。

GEOS API

GEOSライブラリ(地理空間情報処理のためのオープンソースライブラリ)のPythonラップAPIです。

GDAL API

GDALライブラリ(ラスタおよびベクトル地理空間データ変換ライブラリ) のPythonラップAPIです。 ベクトル空間データの読み取りと座標変換、ラスタ(画像)データに対するGDALの最小限の機能をサポートしています。

Geolocation with GeoIP2

MaxMindのgeoip2 Pythonライブラリ https://geoip2.readthedocs.io/en/latest/ のラッパーライブラリです。 IPアドレスから国と都市名を取得します。

使用データ

GeoLite2 Free Downloadable Databases - https://dev.maxmind.com/geoip/geoip2/geolite2/
  • 国 - GeoLite2-Country.mmdb.gz
  • 都市 - GeoLite2-City.mmdb.gz

GeoDjango Utilities

  • LayerMapping data import utility
    • 空間データをモデルに変換する
  • OGR Inspection
    • OGR互換のデータ(シェープファイル等)を検査します
  • GeoJSON Serializer
    • GeoJSONのシリアライザー

GeoDjango Management Commands

管理コマンドを提供します
  • inspectdb
    • データテーブルのデータをDjangoモデルフォーマットで出力します
  • ogrinspect
    • OGR互換のデータ(シェープファイル等)をDjangoモデルフォーマットで出力します

GeoDjango’s admin site

管理画面用に地理空間対応管理クラスを提供します。
  • GeoModelAdminクラス (OpenLayerベース)
  • OSMGeoAdminクラス (OpenStreetMapベース)

Geographic Feeds

GeoRSS SimpleまたはW3C Geo標準に従ってフォーマットされたRSS / Atomフィードに位置情報を埋め込むことが出来ます。

Geographic Sitemaps

KMLSitemapとKMZSitemapが利用できます。