如何使用google-maps-for-rails将颜色参数传递给google maps api?我想根据一个值设置控制器内每个标记的颜色,所以有些是红色,有些是黄色,有些是绿色。我相信它是Symbol中的icon属性,看着:
https://developers.google.com/maps/documentation/javascript/reference#MarkerOptions
另外,我想在标记内有一个1-99的数字,这可能吗?到目前为止,我有这个。
@json = Device.all.to_gmaps4rails do |device, marker|
end
我一直在努力奋斗这几天,任何帮助都会受到赞赏。
答案 0 :(得分:15)
您应该只使用谷歌的图表API。
示例,以下是标记:
FF0000
000000
http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=A|FF0000|000000
所以你应该定制你的需求:
@json = Device.all.to_gmaps4rails do |device, marker|
marker.picture({
:picture => "http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=A|FF0000|000000", # up to you to pass the proper parameters in the url, I guess with a method from device
:width => 32,
:height => 32
})
end
答案 1 :(得分:4)
我实施上述解决方案无济于事,但现在弄清楚为什么这不起作用。也许这是对gem的更新,但“url”是图片URL的右键,而不是“picture”。这是我控制器中的代码:
@devices_hash= Gmaps4rails.build_markers(@devices) do |device, marker|
...
marker.picture({
:url => "http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=A|007FFF|000000",
:width => 32,
:height => 32
})
end
希望这可以帮助一些人在同样的事情上挣扎。