我是否需要使用GeoDjango对Spatialite进行特定配置?

Nik*_*nko 5 django spatial-query geodjango spatialite

根据https://docs.djangoproject.com/en/1.3/ref/contrib/gis/db-api/,Spatialite支持GeoQuerySet.distance().但是,导入区域列表(MultiPolygon作为mpoly属性)后,我正在尝试执行以下操作:

Area.objects.all().distance(center)
Run Code Online (Sandbox Code Playgroud)

而不是可用的东西,我只收到一条错误消息:" ValueError:SQLite不支持大地坐标系上的线性距离计算. "

这里有什么问题,我是否需要在Spatialite上进行一些特殊配置或文档是否错误?

小智 6

您不需要对spatialite做任何事情,而是更改您正在使用的坐标系(srid).Spatialite仅在地理坐标系上进行距离计算,而不是大地测量.检查模型定义中的SRID.或者,您也可以切换到postgis后端.