GeoDjango의 사용법


9

현재 Google Maps js API를 사용하여지도에 지리 데이터를 표시하는 웹 사이트를 만들고 있습니다. 우리는 현재 postgres + postGIS + php를 사용하고 있습니다. GeoDjango의 사용법을 살펴 보는 것이 좋습니다. GeoDjango가 postGIS에서 이미 사용할 수있는 것 (즉, 점, 선 스트링, 다각형, 거리 계산, 면적 계산, "내부"논리 등)보다 제공하는 추가 지리적 기능을 결정하는 데 문제가 있습니다.

GeoDjango는 추가 기능을 제공합니까, 아니면 기존 지리적 기능의 사용을 단순화하려는 의도입니까?

감사!

답변:


11

GeoDjango는 또한 많은 부가 가치, 즉시 사용 가능한 기능을 제공합니다.

  • 지리 공간적으로 활성화 된 관리 사이트 : 이것은 장고에서 가장 좋아하는 기능 중 하나입니다. Django는 자동으로 멋진 관리 페이지를 만듭니다. GeoDjango는 한 단계 더 나아가 Openlayers 맵을 사용하여 지리 공간 데이터를 쉽게보고 편집 할 수있는 방법을 제공합니다.
  • GeoRSS / GeoAtom 피드 : GeoRSS / GeoAtom 피드를 작성하는 것은 비교적 쉽습니다.
  • KML / GML / GeoJSON 지원 : GeoDjango는 KML, GML 및 GeoJSON 직렬화를 지원합니다. 면책 조항이지만 Django로 몇 가지 REST-API를 수행했으며 GeoDjango의 내장 기능을 사용하지 않는다는 것을 알았습니다.
  • 타사 라이브러리 : OLWidgets는 대화식지도를보다 쉽게 ​​만들 수있는 GeoDjango 용 타사 라이브러리의 예입니다. 또한 다양한 Python 라이브러리에 액세스 할 수 있습니다. 예를 들어, 전체 텍스트 검색 기능을 제공하는 Haystack이라는 프로젝트가 있습니다. Solr 또는 Elasticsearch와 같은 외부 검색 색인을 사용하는 경우 Django를 사용하여 지리 공간적으로 활성화 된 전체 텍스트 검색을 수행 할 수 있습니다. 개인적으로 Elasticsearch는 공간 검색을 위해 PostGIS를 대체합니다. Postgis의 모든 기능을 갖추고 있지는 않지만 대부분의 사용 사례에 적합합니다.
  • 서로 다른 데이터베이스간에 쉽게 이동할 수 있습니다. 저는 개인적으로 Spatialite 및 Postgis와 함께 GeoDjango를 사용했습니다.

내 전반적인 평가는 Django와 Python이 웹 개발에 훨씬 좋습니다. 우리 모두는 개인적인 편견을 가지고 있지만 Python에는 많은 지리 공간 및 숫자 라이브러리 모음이 있습니다. 복잡한 지형 공간 알고리즘을 구현해야하는 경우 좋은 선택입니다.


3

예. 맞아 그거야. 기본 기능으로 기존 지리적 기능의 사용을 단순화하려는 의도입니다. 다음 이미지와 같이 일부 데이터베이스에 많은 지리적 기능을 제공합니다.

공간적인

이 외에도 하나의 단락 기능으로 더 만족스러운 결과를 얻는 것은 어렵지 않습니다. 이 코드는 5km 반경의 객체를 제공합니다.

qs = Events.objects.filter(point__distance_lte(pnt, D(km=5)))

geodjango에 대한 자세한 정보를 얻으려면 동일한 주제에 대한 답변을 여기서 확인할 수 있습니다 .

나는 그것이 당신에게 도움이되기를 바랍니다 ...


나는 당신에게 =표시 가 필요합니다 :qs = Events.objects.filter(point__distance_lte=(pnt, D(km=5)))
Francis Yaconiello
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.