2009-05-24 107 views
25

我想问一下哪个是将Google地图集成到Ruby on Rails应用中的最佳解决方案。是一个特定的宝石值得吗?还是应该写我们自己的观点?Ruby on rails gem谷歌地图集成

感谢您的任何意见。

回答

7

我以前用过YM4R,Georuby和空间适配器宝石,效果很好。 看到这个description

11

如果你的要求是只显示特定地区的谷歌地图,可能会进行一些标记,您可以使用谷歌地图的静态图像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> 

结果是:

Static, Marked Map of Chicago, Illinois and Hammond, Indiana with no Center and Zoom

这里是受到了良好的article。也有可能对标记指定地理位置纬度和经度:

markers=color:pink|label:A|55.783041, -137.500994 

所以在Rails的就可以使用,例如,image_tag与谷歌地图图像路径帮手:

= image_tag google_map_image_path, :alt => "Google Map" 
3

由于2012年11月的,我发现的谷歌地图集成的最佳宝石是geocoder
它提供了对象地理编码(通过街道或IP地址),反向地理编码(坐标到街道地址),ActiveRecord和Mongoid距离查询,结果缓存等。专为Rails设计,但也适用于Sinatra和其他Rack框架。您也可以获得railscasts

+1

地理编码只是图片的一部分,对于提问者来说可能甚至可能不重要。对于Google地图,我使用Google Maps 4 Rails(以及Geocoder)。 – iconoclast 2014-01-16 04:10:34

0

GoogleMaps宝石是一个不错的。它添加了所有基本的JS脚本,但是全功能的动态映射无论如何都不能在没有JS编码的情况下完成。

还有JS插件,其中最吸引人的是gmap3,Maplace.Js和gmaps.js。

宝石和插件允许节省基本的东西时间,但使用它们会施加一些限制。例如,如果Google在Maps API中进行更改,则必须等待更新版本的Gem或插件或手动集成。

实际上,将Google地图集成到Rails应用程序和恕我直言联系中没有什么大的困难,因为它使得它可以在没有宝石的情况下完成它。

有关将Google地图集成到Ruby on Rails应用中的详细演练,请参阅此文章:How to Integrate Google Maps into Ruby on Rails App