新手入門。我正在構建一個應用程序,讓用戶在某個位置創建事件,並計劃在heroku上進行託管。其他用戶可以查看在其緯度/經度x英里範圍內發生的事件。我正在尋找一種解決方案,幫助我獲取x英里半徑範圍內發生的所有事件。選項似乎是Geocoder和Geokit。 Geokit似乎更受歡迎,但似乎並沒有準備好Rails 3.對於我想要做的事情,有明顯的選擇嗎?Geocoder vs Geokit在緯度/經度座標的X英里內尋找對象?
回答
您應該使用MongoDB,它是通過Heroku插件提供的。有了Mongo,你就可以訪問空間查詢(「找到這個圈子裏的所有事件」):http://www.mongodb.org/display/DOCS/Geospatial+Indexing
不幸的是,如果你嘗試使用Postgres的geospacial索引,你會發現Heroku默認不提供它。
看看Mongoid,它可以讓你在Mongo中做文檔的ActiveRecord風格表示,並且很容易。
我以爲Heroku只提供Postgresql。所以我必須在其他地方主持mongo?此外,如果使用postgres,如果我只使用geocoder或geokit gem/plugin,它會不會起作用? – John 2011-04-28 07:39:44
您只需添加它作爲一個插件:http://addons.heroku.com/mongohq它_may_與Postgres工作了一段時間,但你會最終與您的數據庫運行一些可怕的查詢,如果你的想法是有些東西會讓你不得不重寫它以使用空間查詢,這意味着使用PostGIS自我託管的postgres。 – stef 2011-04-28 07:42:57
Postgres真的很弱,我無法運行查詢獲取某個位置範圍內的事件嗎?它在Mongoid網站上說,在繼續之前,我應該很好地提高Ruby的知識和MongoDB的全面知識,否則我會陷入「痛苦的世界」。有多少同時發生的查詢會突然出現,你能告訴我嗎? thy – John 2011-04-28 08:34:57
- 1. 尋找緯度/經度座標在谷歌地圖URL
- 2. 經緯度座標
- 3. 更改座標經緯度和緯度
- 4. Geocoder尋找經緯度字段,但他們不存在
- 5. 從緯度和經度,以絕對X,Y座標
- 6. 如果在緯度/經度點的500英尺範圍內解析KML座標
- 7. 爭奪緯度經度座標的JavaScript
- 8. 1英里範圍內的所有經度和緯度範圍
- 9. 在X,Y座標中翻譯經度和緯度
- 10. mySQL經度和緯度查詢x英里半徑內的其他行
- 11. 緯度和經度UTM座標
- 12. 經度,緯度到XY座標轉換
- 13. 3D座標經度和緯度
- 14. 隨機緯度經度座標
- 15. GoogleMaps API - 座標(經度,緯度)地址
- 16. 將x,y,區域座標轉換爲經度和緯度
- 17. 將經度/緯度轉換爲X/Y座標
- 18. Geokit plus Rails 3.1.1,經緯度問題。
- 19. 查找離緯度/經度座標最近的5個車站
- 20. Shape文件:XY座標和經度/緯度座標
- 21. 將緯度經度座標轉換爲圖像地圖座標
- 22. 矩陣,Python腳本的緯度,經度座標對
- 23. 對於android中的區域座標(經度和緯度)
- 24. 在Java中將經度緯度轉換爲英里
- 25. Rails的Geokit轉換GPS座標,以谷歌緯度長
- 26. 使用GPS座標(經度,緯度)查找語言環境的內容?
- 27. 什麼是緯度/經度來有1英里的
- 28. 獲取經緯度從經緯度對象的Android
- 29. CoreLocation ::獲取經緯度座標
- 30. Mapkit經緯度到屏幕座標
有一個geils的Rails3分支(我使用):https://github.com/jlecour/geokit-rails3 – apneadiving 2011-04-28 07:28:21