5

我正在将我的应用程序切换为使用地理编码器。在我的位置表中,我有地址、纬度、lng、街道地址、城市和邮政编码的列。使用地理编码器,我很高兴能够在我的位置模型中使用以下验证后填充 lat、lng 和地址列

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

有没有办法让地理编码器将街道名称、城市和邮编添加到其他三个单独的列?

4

1 回答 1

10

我对 Rails 还很陌生,所以一开始我错过了这个,但希望这对其他人有帮助。

在我的模型中

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]
于 2012-01-25T03:12:13.440 回答