我想问一下哪个是将google地图集成到rails应用上的ruby的最佳解决方案。特定的宝石值得吗?还是我们应该为它写自己的观点?
感谢您的任何意见。
答案 0 :(得分:32)
Fyi,我已经完成了gmaps4rails的稳定发布。
答案 1 :(得分:11)
如果您的要求仅用于显示特定区域的Google地图,可能还有一些标记,则可以使用Google Maps Static Image API,例如:
<img src="http://maps.google.com/maps/api/staticmap?size=255x255&maptype=roadmap&sensor=false&markers=color:blue|label:A|Chicago,IL&markers=color:purple|label:B|Hammond,IN" alt="Static, Marked Map of Chicago, Illinois and Hammond, Indiana with no Center and Zoom"></img>
结果是:
这是一个很好的article主题。此外,还可以在标记上指定纬度和经度的地理位置:
markers=color:pink|label:A|55.783041, -137.500994
因此,在Rails中,您可以使用谷歌地图图片路径帮助程序image_tag
:
= image_tag google_map_image_path, :alt => "Google Map"
答案 2 :(得分:7)
之前我使用过YM4R,Georuby和空间适配器宝石,效果很好。 见description。
答案 3 :(得分:3)
截至2012年11月,我发现谷歌地图集成的最佳宝石是geocoder
它提供对象地理编码(通过街道或IP地址),反向地理编码(坐标到街道地址), ActiveRecord和Mongoid的距离查询,结果缓存等。专为Rails设计,但也适用于Sinatra和其他Rack框架。
您也可以获得railscasts。
答案 4 :(得分:0)
GoogleMaps宝石很棒。它添加了所有基本的JS脚本,但是如果没有JS编码,就无法完成全功能的动态映射。
还有JS插件,其中最吸引人的是gmap3,Maplace.Js和gmaps.js。
宝石和插件可以节省基本的时间,但使用它们会带来一些限制。例如,如果Google在其Maps API中进行更改,则必须等待gem或插件的更新版本或手动集成。
事实上,将谷歌地图集成到Rails应用程序和恕我直言中并没有什么大的难度,它可以在没有宝石的情况下实现它。
有关将Google地图集成到rails应用上的ruby的详细演练,请参阅此文章:How to Integrate Google Maps into Ruby on Rails App。