Карты Google для Rails - центр маркера всегда максимально увеличен - PullRequest
3 голосов
/ 31 октября 2011

Я использую карты Google для рельсов, и у меня все настроено правильно, но я не могу понять, как установить масштаб по умолчанию. Я попытался установить его в gmaps4rails.base.js.coffee здесь:

@default_map_options = 
      id: 'map'
      draggable: true
      detect_location: false  # should the browser attempt to use geolocation detection features of HTML5?
      center_on_user: false   # centers map on the location detected through the browser
      center_latitude: 0
      center_longitude: 0 
      zoom: 7
      maxZoom: null
      minZoom: null
      auto_adjust : true      # adjust the map to the markers if set to true
      auto_zoom: true         # zoom given by auto-adjust
      bounds: []              # adjust map to these limits. Should be [{"lat": , "lng": }]    
      raw: {}                  # raw json to pass additional options

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

<%= gmaps(:markers => {:data => @json, 
                      :options => {:raw => '{ animation: google.maps.Animation }' } },
                      :map_options => { :raw => '{ disableDefaultUI: false, 
                                                   scrollwheel: true }' }) %>

Ничего, что я делаю, кажется, ничего не делает, оно всегда полностью увеличено. Спасибо!

Ответы [ 3 ]

2 голосов
/ 26 октября 2012

Вот мое решение, которое работает (обратите внимание, что я использую haml. Используйте <%= %> для erb):

= gmaps("map_options" => { "detect_location" => true, "center_on_user" => true, "auto_zoom" => false, "zoom" => 16},"markers" => { "data" => @json })
1 голос
/ 14 марта 2012

Вам необходимо установить: auto_zoom => false,: zoom => value

<%= gmaps(:markers => {:data => @json, 
                  :options => {:raw => '{ animation: google.maps.Animation }' } },
                  :map_options => { :raw => '{ disableDefaultUI: false, 
                                               scrollwheel: true,
                                               auto_zoom => false,
                                               zoom => 10 }' }) %>
0 голосов
/ 17 апреля 2013

Не уверен, что именно вы пытаетесь достичь, но моя проблема заключалась в том, чтобы с автоматическим масштабированием он увеличил бы настолько, что перспектива была неправильной. Моим решением было изменить максимальное значение масштабирования в базовом сценарии кофе. Фрагмент ниже. Обратите внимание, что авто остается верным.

  center_longitude: 0
  zoom: 7
  maxZoom: 18
  minZoom: null
  auto_adjust : true      # adjust the map to the markers if set to true
  auto_zoom: true         # zoom given by auto-adjust
  bounds: []              # adjust map to these limits. Should be [{"lat": , "lng": }]
  raw: {}                  # raw json to pass additional options

Другое упоминание решения haml в ответах также работает для одной страницы.

...