Geocoder 与 Geokit 用于查找纬度/经度坐标 X 英里范围内的对象?
Rails 新手。我正在构建一个应用程序,用户可以在其中在某个位置创建事件,并计划在 heroku 上托管。其他用户可以查看在其纬度/经度 x 英里范围内发生的事件。我正在寻找一种解决方案,可以帮助我获取 x 英里半径内发生的所有事件。这些选项似乎是 Geocoder 和 Geokit。 Geokit 似乎更受欢迎,但似乎还没有为 Rails 3 做好准备。对于我想做的事情有明显的选择吗?
Newbie to Rails. I am building an app where users create events at a certain location, and plan to host on heroku. Other users can view events taking place within x miles of their latitude/longitude. I'm looking for a solution that would help me fetch all events happening in an x mile radius. The options seem to be Geocoder and Geokit. Geokit seems to be more popular but doesn't seem to be ready for Rails 3. Is there an obvious choice for what I'm trying to do?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您应该使用 MongoDB,它是通过 Heroku 插件提供的。使用 Mongo,您可以访问空间查询(“找到我这个圈子内的所有事件”): http://www.mongodb.org/display/DOCS/Geospatial+Indexing
不幸的是,如果您尝试使用 Postgres 的地理空间索引,您会发现 Heroku 默认情况下不提供它。
看一下Mongoid,它使您能够在 Mongo 中对文档进行 ActiveRecord 风格的表示,并且非常容易获得一起去。
You should use MongoDB, which is provided via a Heroku addon. With Mongo you then have access to spacial queries ("find me all the events within this circle"): http://www.mongodb.org/display/DOCS/Geospatial+Indexing
Unfortunately if you try to use Postgres's geospacial indexing you will find that Heroku does not offer it by default.
Take a look at Mongoid which enables you to do ActiveRecord-style representations of your documents in Mongo, and is very easy to get going with.