10 マイル以内のユーザーの住所を検索しようとしています。距離が 10 マイル以内であれば問題なく動作するようです。ただし、10 マイルを超えると、何もないところまでズームします。範囲内にない場合にランダムな海にズームしないように修正する方法はありますか?
ユーザーコントローラー
class UsersController < ApplicationController
def index
if params[:search].present?
@users = User.near(params[:search], 10)
else
@users = User.all
end
@hash = Gmaps4rails.build_markers(@users) do |user, marker|
marker.lat user.latitude
marker.lng user.longitude
marker.infowindow user.description
end
end
end
index.html.erb
<div id="map-container">
<div id="map-canvas"></div>
</div>
<%= form_tag users_path, :method => :get do %>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search Near" %>
</p>
<% end %>
<script>
$(document).ready(function(){
handler = Gmaps.build('Google');
handler.buildMap({ provider: {}, internal: {id: 'map-canvas'}}, function(){
markers = handler.addMarkers(<%=raw @hash.to_json %>)
handler.bounds.extendWith(markers);
handler.fitMapToBounds(markers);
if(navigator.geolocation)
navigator.geolocation.getCurrentPosition;
});
});
</script>