Сделать маркер на карте прямой ссылкой на 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);
});