Есть ли способ с помощью Geocoder сохранить название улицы, город и почтовый индекс в отдельные столбцы?

Я нахожусь в процессе переключения своего приложения на использование геокодера. В моей таблице мест у меня есть столбцы для адреса, широты, долготы, улицы_адреса, города и почтового индекса. Используя геокодер, я с радостью могу заполнить столбцы lat, lng и address после проверки с помощью следующей модели в моих местах.

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

Есть ли способ, чтобы геокодер добавил название улицы, город и почтовый индекс в три других отдельных столбца?


person Tim Sutcliffe    schedule 24.01.2012    source источник


Ответы (1)


Я все еще новичок в рельсах, поэтому сначала пропустил это, но надеюсь, что это поможет кому-то еще.

в моей модели

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

и на мой взгляд

 @tonic.address = params[:address]
person Tim Sutcliffe    schedule 25.01.2012
comment
Спасибо! Я не знал, что geocoded_by тоже может взять блок - person Damien; 06.09.2013