Je construis un site immobilier à Django et j'ai un modèle Home, qui stocke diverses informations, y compris l'adresse. Le backend de base de données utilise MySQL.Django: GeoDjango est-il un bon site pour mon site?
Vous voulez créer un Yelp comme recherche.
Une recherche où les utilisateurs peuvent entrer le code postal ou le nom de la ville, puis obtenir les résultats de Home dans cette zone.
Les utilisateurs peuvent également choisir le rayon (5 mi, 10 mi ...) du point et obtenir plus/moins de résultats.
Les résultats de la recherche seront sur google map et les utilisateurs peuvent zoomer avant/arrière pour obtenir de nouveaux résultats de recherche sur la carte.
est-Geo Django un bon ajustement ici? En supposant que peu de gens utilisent GeoDjango, je ne trouve pas beaucoup de documents pour résoudre les problèmes mentionnés ci-dessus.
Après avoir regardé ses official doc pendant environ quelques heures, je ne peux pas vraiment trouver d'exemple pertinent pour mes problèmes et je ne sais pas comment il s'intègre bien avec le site Web existant en utilisant MySQL. Peut-être trop sophistiqué pour mon utilisation simple de l'emplacement?
Je suis vraiment curieux de savoir si Geo Django est un bon ajustement, si c'est le cas ... alors je vais y regarder de manière plus agressive et profonde. Sinon, je vais essayer de le construire par moi-même.
Des conseils ou astuces sur GeoDjango ou sur la façon de construire le système seraient très utiles et seront grandement appréciés.
Merci pour l'extrait de code et d'explication. PostgreSQL est donc la seule solution ... Je vois que vous avez utilisé PointField ... Comment obtenir des résultats basés sur le code postal? Dois-je créer un modèle de code postal avec PointField et le faire correspondre avec le modèle Home? – DavidL
@DavidL dans ce cas, je suggère de lire cet article http://groups.google.com/group/geodjango/msg/77235bd5d350e416. Il a un lien vers un fichier avec tous les codes postaux, et vous indique comment les importer dans une base de données. Après cela, vous faites un 'Zipcode.filter (mpoly__contains = Point (...))' –