Geocoder Gem Reverse Geocoding

Kyl*_*cot 3 ruby ruby-on-rails reverse-geocoding rails-geocoder

看完RailsCasts#273后我想使用Geocoder宝石.我见过这个:

class Skatepark < ActiveRecord::Base
  reverse_geocoded_by :latitude, :longitude
  after_validation :fetch_address
  ...
end
Run Code Online (Sandbox Code Playgroud)

这将反转地理编码坐标并填充:addressformatted_address.

我可以得到这个分离为:street,:locality,:region,:country,和:postal_code地址解析器的宝石?

cel*_*tex 5

我不知道你的模型,但这就是你填充它的方式.它也记录在您引用的页面中.

class Skatepark < ActiveRecord::Base
  reverse_geocoded_by :latitude, :longitude do |obj, results|
    if geo = results.first
      # populate your model
      obj.city    = geo.city
      obj.zipcode = geo.postal_code
      obj.country = geo.country_code
    end
  end
  after_validation :fetch_address
  ...
end
Run Code Online (Sandbox Code Playgroud)