2012-01-24 9 views
5

Sto passando la mia app per utilizzare geocoder. Nella mia tabella dei luoghi ho colonne per indirizzo, lat, lng, street_address, città & zip. Utilizzando geocoder Sono felicemente in grado di riempire lat, lng & colonne di indirizzo dopo la convalida con i seguenti nella mia luoghi modelloUtilizzando Geocoder, c'è un modo per salvare il nome della via, la città e il zip per separare le colonne?

attr_accessible :address, :lat, :lng  
geocoded_by :address, :latitude => :lat, :longitude => :lng 
after_validation :geocode, :if => :address_changed? 

C'è un modo per avere anche geocoder aggiungere il nome della via, la città e zip a tre altre colonne separate?

risposta

10

Sono ancora piuttosto giovane, quindi all'inizio mi sono perso, ma spero che questo aiuti qualcun altro.

nel mio modello

geocoded_by :address do |obj,results| 
    if geo = results.first 
    obj.city = geo.city 
    obj.lat = geo.latitude 
    obj.lng = geo.longitude 
    obj.zip = geo.postal_code 
    obj.state = geo.state 
    obj.country = geo.country_code 
    end 
end 

e, a mio avviso

@tonic.address = params[:address] 
+1

Grazie! Non sapevo che 'geocoded_by' potesse anche prendere un blocco – Damien

Problemi correlati