Сделать маркер на карте прямой ссылкой на gmaps4rails

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

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

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

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

или же

<%= link_to %> function

1 ответ

Решение

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

@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);
});
Другие вопросы по тегам