显示结果GeoQuerySet

时间:2013-05-13 14:52:54

标签: postgis geodjango

我正在尝试通过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。 我该如何利用这个结果?

1 个答案:

答案 0 :(得分:1)

transform()函数需要一个整数,而不是一个字符串。正确的语法是:

  

close_loc.transform(new_srid_number)

在你的情况下,像这样:

  

close_loc.transform(54004)

希望它能运作!