Geocodificar múltiples direcciones en un modelo
Estoy tratando de geocodificar 2 direcciones en un modelo usando geocodificador y no puedo hacer que la gema funcione como quiero. Aquí está el código que estoy aplicando a mi modelo:
class Sender < ActiveRecord::Base
validates_presence_of :source_address
validates_presence_of :destination_address
geocoded_by :source_address, :latitude => :latitude1, :longitude => :longitude1
geocoded_by :destination_address, :latitude2 => :latitude2, :longitude2 => :longitude2
def update_coordinates
geocode
[latitude1, longitude1, latitude2, longitude2]
end
after_validation :geocode
Aquí está el código para vistas / remitentes / show.html.erb:
<%= @sender.latitude1 %>
<%= @sender.longitude1 %>
<%= @sender.latitude2 %>
<%= @sender.longitude2 %>
Resultado: 35.6894875 139.6917064 - ¿No se supone que debe enviarme información de 2 direcciones?
Aquí está mi js:
<script type="text/javascript">
function initialize() {
var source = new google.maps.LatLng(<%= @sender.latitude1 %>, <%= @sender.longitude1 %>);
var dest = new google.maps.LatLng(<%= @sender.latitude2 %>, <%= @sender.longitude2 %>);
var mapOptions = {
center: source,
zoom: 8
}
var mapOptions2 = {
center: dest,
zoom: 8
}
var map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);
var map2 = new google.maps.Map(document.getElementById('map_canvas2'), mapOptions2);
var marker = new google.maps.Marker({
position:source,
map: map
});
var marker2 = new google.maps.Marker({
position:dest,
map: map2
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>