Я полный noob, создавая первое приложение для рельсов. Я успешно реализовал Google-maps-for-rails V2, используя учебник apneadiving на youtube: http://www.youtube.com/watch?v=R0l-7en3dUw&feature=youtu.beGmaps4rails V2 - изменить масштаб по умолчанию
Моя проблема в том, что для каждой из моих карт я показываю только один маркер, и когда карта загружается, она настраивается на полностью масштабироваться.
Поиск вокруг, кажется, существует множество решений для более ранних версий Gmaps4rails, но с V2 и созданием карты через javascript я не могу найти решение, которое работает.
Для справки, мой код ниже:
Вид:
<script type="text/javascript">
handler = Gmaps.build('Google');
handler.buildMap({ provider: {}, internal: {id: 'map'}}, function(){
markers = handler.addMarkers(<%=raw @hash.to_json %>);
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
}); </script>
Контроллер:
def show
@pins = Pin.find(params[:id])
@hash = Gmaps4rails.build_markers(@pins) do |pin, marker|
marker.lat pin.latitude
marker.lng pin.longitude
end
end
Я попытался сделать изменения с помощью консоли с помощью: gmap.setzoom (12), как было предложено некоторым сообщением, но с этим не повезло.
Любая помощь очень ценится
ответа, который работал на меня: взгляд изменение:
<script type="text/javascript">
handler = Gmaps.build('Google');
handler.buildMap({ provider: {}, internal: {id: 'map'}}, function(){
markers = handler.addMarkers(<%=raw @hash.to_json %>);
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
handler.getMap().setZoom(12);
}); </script>
Спасибо за помощь!
если вы 'handler.fitMapToBounds();' зум автоматически подстраиваться – apneadiving
мне нужен как 'fitMapToBounds();' и 'setZoom (val)', чтобы он работал только с одним маркером. – RajeshM