Exploring geodata and map services

I am trying to create my first GIS application with GeoDjango, and before starting, I have a few questions:

First: What is GeoDjango for Google Maps? Is it just for processing information that is then transferred to a service like Google Maps?

If so, what is the advantage of using GeoDjango - just store lat / long points in db and transfer them to Google Maps?

Assuming that all of the above is true, if I suddenly want to change the map providers (say, from Google to Bing), does GeoDjango make it much easier and module?

I have problems understanding the relationship between GeoDjango and mapping services, if someone could clarify this for me with a few examples, that would be awesome.

Further. If I have an existing project in GeoDjango that I want to integrate using MySQL, should I move everything to PostgreSQL because GeoDjango does not work with MySQL? What to do with databases?

+4
source share
1 answer

As the documentation says:

GeoDjango is a Django add-on that turns it into a world-class geographic web structure. GeoDjango aims to make it as simple as creating geographic web applications such as Services. Some features include:

  • Django model field for OGC geometry.
  • Extensions for Djangos ORM for querying and processing spatial data.
  • Inappropriate, high-level Python interfaces for geometry geometry operations and data formats.
  • Editing geometry fields inside the administrator.

You can easily process GeoDjango information on Google Maps using the Javascript Google Maps API. Advantages of GeoDjango are special tools for working with geometric types of information. For example, these types of fields :

  • GeometryField
  • Pointfield
  • LineStringField
  • Polygonfield
  • Multipointfield
  • MultiLineStringField
  • MultiPolygonField
  • GeometryCollectionField

And basic integration with spatial databases and geospatial libraries :

  • Geos
  • proj.4
  • Gdal
  • Geoip
  • Postgis
  • SpatiaLite

If you want to keep the ability to change the map provider in the future, it is recommended to use the frontend (map) architecture - backend (GeoDjango). In this case, you can easily change the external interface or easily switch between different cards.

I also recommend switching to postgres, because it has various tools, such as GEOS, PROJ.4, PostGIS libraries, which can be useful for working with spatial data. MySQL has limited functionality, as indicated in the documentation.

+8
source

Source: https://habr.com/ru/post/1383161/


All Articles