2010-01-11 16 views
8

Scusa la mia ignoranza, non sono nemmeno sicuro del termine corretto per questo. Quello che voglio fare è cercare per città e stato o codice di avviamento postale nella mia applicazione django e includere anche i risultati entro certe distanze della posizione (25, 50, 75 miglia).django, ricerche basate sulla posizione

Suppongo che sia necessario convertire la città e lo stato o il codice di avviamento postale in lat e long e quindi cercare in base a ciò. È corretto o qual è il modo migliore per farlo in un'applicazione django? Qualcuno sa delle app che lo fanno già, quindi posso guardare il codice?

Grazie per l'aiuto.

risposta

7

È possibile utilizzare GeoDjango, che include già queste funzionalità. Altrimenti puoi fare esattamente come hai detto: indirizzi geocodici per ottenere latitudine e longitudine, quindi fai solo i calcoli ;-)

+0

Potete dirmi di più su come avrei fatto questo con GeoDjango? Ho dato un'occhiata a questo, ma sembra più che sia usato per mostrare cose sulle mappe. – Joe

+2

Dopo aver configurato i modelli in geodjango, offrono "query spaziali" per selezionare oggetti dal database in base a criteri come la distanza o l'area geografica. Probabilmente è eccessivo per quello che vuoi, ma ti dirò per esperienza che la geocoding si indirizza in lat/long e quindi fare i calcoli per ottenere oggetti vicini non è facile da ottenere. –

+0

Significa che l'intero progetto è GeoDjango Project oppure si può usare la funzione Spatial Query solo creando alcuni modelli correlati? –

Problemi correlati