Report abuse


			
class Address < ActiveRecord::Base
  include GeoKit::Geocoders

  before_validation_on_save :geolocate

  validates_presence_of :line_one, :state, :zip
  validates_each :lat, :lng do |record,attr,value|
    record.errors.add_to_base("Geocoding was not successful" if value.nil?
  end

  private

    def geolocate
      res = GoogleGeocoder.geocode(to_s)
      self.latitude = res.lat
      self.longitude = res.lng
    end
end