为gmaps4rails创建地图标记直接链接

时间:2011-12-22 19:04:41

标签: ruby-on-rails ruby ruby-on-rails-3 gmaps4rails

目前,当点击地图标记时,infowindow显示为“会发生什么”,如下所示:

        google.maps.event.addListener(marker, 'click', function(){
            infowindow.open(Gmaps.map.map, marker);
        });

如何让它自动链接到标记的SHOW页面,即。哪里可以放入代码参考:

<a href='/controller/#{slug}'>#{title}</a> 

<%= link_to %> function

1 个答案:

答案 0 :(得分:3)

对于这种需求,我将一个块传递给控制器​​中的gmaps4rails方法(doc here):

@json = User.all.to_gmaps4rails do |user, marker|
  marker.json "\"id\": #{user.id}"
  # or
  marker.json "\"link\": #{method_to_create_link}"
end

这样我可以获得创建链接或其他所需的任何其他信息。

那就是说,你可以用这种方式更新你的听众:

base_url = "whatever you need";
google.maps.event.addListener(marker, 'click', function(){
   window.location(base_url + marker.id);
   // or
   window.location(marker.link);
});