django,基于位置的搜索

8 投票
2 回答
3279 浏览
提问于 2025-04-15 17:54

请原谅我的无知,我甚至不确定这个说法是否正确。我想在我的Django应用中按城市和州或邮政编码进行搜索,并且还想包括距离该地点一定范围内的结果(比如25、50、75英里)。

我猜想你可能需要把城市和州或邮政编码转换成经纬度,然后再根据这些信息进行搜索。这样做对吗?在Django应用中实现这个功能的最佳方法是什么?有没有人知道现成的应用可以做到这一点,这样我可以看看它们的代码?

谢谢你的帮助。

2 个回答

2

你也可以使用MongoDB,这样会有更好的优化效果,具体可以参考这个链接:Python根据距离进行地理编码过滤

关于地理空间索引的更多信息,可以查看这个链接:http://www.mongodb.org/display/DOCS/Geospatial+Indexing

7

你可以使用 GeoDjango,这个工具已经包含了你需要的功能。如果不想用这个工具,你也可以按照你说的做:先把地址转换成经纬度,然后再进行计算就可以了 ;-)

撰写回答