python – 想知道GeoDjango和Mapping Services
作者:互联网
我正在尝试使用GeoDjango构建我的第一个GIS应用程序,在开始之前我有几个问题:
第一:GeoDjango与谷歌地图有什么关系?它只是处理信息,然后传递给谷歌地图等服务?
如果这是真的,那么使用GeoDjango与简单地在数据库中存储纬度/经度并将它们传递给谷歌地图有什么好处?
假设上述所有情况都属实,如果我突然想要改变地图提供者(从谷歌到Bing,我们可以说),GeoDjango是否更容易和更模块化?
我在理解GeoDjango和地图服务之间的关系时遇到了一些麻烦,如果有人可以通过一些例子为我澄清这一点,那就太棒了.
下一步:如果我在GeoDjango中有一个我希望集成的现有项目使用MySQL,我是否应该将所有内容移到PostgreSQL上,因为GeoDjango与MySQL不兼容?我应该怎么做数据库?
解决方法:
如documentation所述:
GeoDjango is an add-on for Django that turns it into a world-class
geographic Web framework. GeoDjango strives to make it as simple as
possible to create geographic Web applications, like location-based
services. Some features include:
- Django model fields for OGC geometries.
- Extensions to Django’s ORM for the querying and manipulation of spatial data.
- Loosely-coupled, high-level Python interfaces for GIS geometry operations and data formats.
- Editing of geometry fields inside the admin.
您可以通过Google Maps Javascript API轻松处理GeoDjango信息到Google地图.
GeoDjango的优点是处理几何类型信息的特殊工具.例如fields这样的种类:
> GeometryField
> PointField
> LineStringField
> PolygonField
> MultiPointField
> MultiLineStringField
> MultiPolygonField
> GeometryCollectionField
与spacial databases和geospacial libraries的基本级集成:
> GEOS
> PROJ.4
> GDAL
> GeoIP
> PostGIS
> SpatiaLite
如果您希望将来能够更改地图提供程序,建议使用前端(地图) – 后端(GeoDjango)架构.在这种情况下,您可以轻松更改前端或在不同地图之间切换.
我建议也迁移到postgres,因为它有各种工具,如GEOS,PROJ.4,PostGIS库,可用于处理空间数据. MySQL的功能有限,如文档中所述.
标签:python,database,django,google-maps,geodjango 来源: https://codeday.me/bug/20190610/1209102.html