Estoy usando Mongoid en mi aplicación Rails. ¿Hay algún tutorial sobre cómo almacenar y consultar datos de ubicación y buscar objetos que se encuentran en un radio determinado de una ubicación? He estado buscando y no he encontrado nada.¿Cuál es el mejor tutorial para hacer consultas geoespaciales con Rails/Mongoid?
Respuesta
La documentación de MongoDB para la indexación geoespacial está disponible here. Eso debería proporcionarle detalles sobre "cómo almacenar y consultar datos de ubicación".
mongoid
es solo un contenedor de objetos alrededor del controlador Ruby existente. Una vez que comprenda cómo emitir consultas geográficas, entonces debería ser cuestión de emitir estas consultas a través del mongoid
.
http://mongly.openmymind.net/geo/index
Este es un tutorial interactivo (y divertido) para la materia geoespacial de mongo. http://mongly.openmymind.net/tutorial es también una gran introducción a mongo en general.
Debido a que, como yo, sospecho que muchas personas aprenden mejor a partir de ejemplos, aquí es una:
Suponiendo que haya creado un índice 2d en su campo de matriz geoespacial (ver más abajo para más detalles), y digamos que su modelo de objetos es Place y el campo de ubicación es: loc, una consulta cuadro delimitador podría tener este aspecto:
# Bounding Box query
Place.where(:loc.within => { "$box" => [ [ 20.73083, 30.99756 ], [ 45.741404, 51.988135 ] ] }).count
Además del enlace publicado por Gates VP anterior, asegúrese de leer también este documento de Moingoid: http://mongoid.org/docs/querying/criteria.html . Encontrará más ejemplos como los de arriba.
Además, debe asegurarse de que se haya creado su índice. Lea el siguiente documento de Mongoid, y la correspondiente Doc MongoDB:
- 1. MongoDb $ y operador con consultas geoespaciales
- 2. ¿Cuál es el mejor tutorial SQL en línea para aprender a escribir complejas consultas de informes?
- 3. ¿Cuál es el mejor tutorial para aprender MPI para C++?
- 4. consultas MongoDB geoespaciales en php
- 5. ¿Cuál es el mejor tutorial para aprender Mongoid?
- 6. ¿Cuál es el mejor tutorial en línea para comenzar con Spring Python?
- 7. Cuál es el mejor valor para hacer -j
- 8. ¿Cuál es el mejor tutorial para el desarrollo de iPhone, sin Interface Builder?
- 9. ¿Cuál es la mejor manera de crear consultas complejas RESTful?
- 10. El mejor tutorial para aprender SSIS
- 11. ¿El mejor tutorial para multidifusión de aplicaciones?
- 12. ¿Cuál es el mejor editor para AutoHotkey?
- 13. ¿Cuál es la mejor manera de hacer GUI en Clojure?
- 14. ¿Cuál es el mejor visor para NLog?
- 15. ¿Cuál es el mejor recurso para aprender (N) ASM?
- 16. Enfoques para almacenar datos geoespaciales en Redis
- 17. ¿Cuál es el mejor lenguaje para el reconocimiento de huella?
- 18. mejor Ant tutorial/quickstart?
- 19. ¿Cuál es el mejor algoritmo para hacer emparejamientos para una clasificación de fuentes multitudinarias?
- 20. ¿Cuál es la mejor consulta: con una condición larga de "donde está" o muchas consultas pequeñas?
- 21. ¿cuál es el mejor lenguaje de programación para el selenio?
- 22. ¿Cuál es el mejor lenguaje para el modelado de física?
- 23. Cuál es el mejor IDE para el desarrollo actionscript3
- 24. ¿Cuál es el mejor esquema de SQL para este proyecto?
- 25. ¿Cuál es el mejor IDE para Python para Windows
- 26. ¿Cuál es el mejor lugar para comenzar a aprender Qt?
- 27. ¿Cuál es la mejor manera de hacer una aplicación de mapas para el iPhone
- 28. ¿Cuál es el mejor argumento Pro OOP?
- 29. ¿Cuál es el mejor campo para guardar el cumpleaños?
- 30. ¿Cuál es la mejor manera de hacer respaldos automáticos?
parece que el enlace está desconectado, ¿hay otra fuente para el tutorial? – user2774480