我正在尝试通过geoDjango查询我的PostGis数据库,但我发现错误,我在互联网上找不到解决方案。
close_loc=PlanetOsmPoint.objects.get(way__distance_lte=(lePoint, D(**distance_from_point)))
无论我使用打印件尝试结果(close_loc),我都会遇到此错误:
django.db.utils.DatabaseError: Only lon/lat coordinate systems are supported in geography.
我试图通过转换(SRID)将其转换为正确的格式,但没有解决,仍然是同样的问题。
以下是一些信息:
转型:
sr1=SpatialReference('54004')
sr2=SpatialReference('NAD83')
ct=CoordTransform(sr1, sr2)
获取close_loc后我正在做什么:
close_loc.transform(ct)
print close_loc[0]
close_loc类型是GeoQuerySet。 我该如何利用这个结果?
答案 0 :(得分:1)
transform()函数需要一个整数,而不是一个字符串。正确的语法是:
close_loc.transform(new_srid_number)
在你的情况下,像这样:
close_loc.transform(54004)
希望它能运作!