Django, поиск на основе местоположения - PullRequest
8 голосов
/ 12 января 2010

Извините за мое невежество, я даже не уверен в правильности этого термина. Я хочу выполнить поиск по городу и штату или почтовому индексу в моем приложении django, а также включить результаты на определенных расстояниях (25, 50, 75 миль).

Я предполагаю, что вам, вероятно, нужно преобразовать город и штат или почтовый индекс в лат и лонг, а затем выполнить поиск на основе этого. Это правильно или как лучше всего это сделать в приложении django? Кто-нибудь знает о выходе приложений, которые уже делают это, так что я могу посмотреть на код?

Спасибо за помощь.

Ответы [ 2 ]

7 голосов
/ 12 января 2010

Вы можете использовать GeoDjango , который уже включает эти функции. В противном случае вы можете сделать точно так, как вы сказали: адреса геокодирования, чтобы получить широту и долготу, а затем просто посчитайте; -)

2 голосов
/ 10 июня 2011

Вы также можете использовать MongoDB, которая будет иметь лучшую оптимизацию, ср. Геокодовая фильтрация Python по расстоянию

http://www.mongodb.org/display/DOCS/Geospatial+Indexing

...