Сделать маркер на карте прямой ссылкой на gmaps4rails - PullRequest
0 голосов
/ 22 декабря 2011

В настоящее время информационное окно отображается как «что происходит» при нажатии на маркер карты, например:

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

Как мне заставить это работать, чтобы автоматически ссылаться на страницу SHOW маркера, т.е. где можно поставить ссылку на код:

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

или

<%= link_to %> function

1 Ответ

3 голосов
/ 22 декабря 2011

Для такого рода потребностей я передаю блок методу gmaps4rails в контроллере ( doc здесь ):

@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);
});
...