geodjango返回夏威夷的地点而不是la

时间:2015-08-04 05:23:59

标签: django postgis geodjango

我的地理空间查询返回的位置远离纬度和经度坐标。

以下是我的模型:

geometry = models.PointField(srid=4326)
geography = models.PointField(srid=3857, null= True)

我正在尝试使用地理位置字段,因此我可以使用米距离,这就是查询的样子:

pnt = fromstr("POINT(%s %s)" % (lat, lng), srid=3857)
Location.objects.filter(geography__dwithin=(pnt, 3500)).distance(pnt).order_by('distance')[:75]

1 个答案:

答案 0 :(得分:0)

只需要正确转换点这里是django的代码:

pnt = fromstr("POINT(%s %s)" % (self.lng, self.lat), srid=4326)
ct = CoordTransform(SpatialReference(4326), SpatialReference(3857))
pnt.transform(ct)