Ruby Geocoder多个反向地理编码器

dor*_*kon 1 ruby-on-rails reverse-geocoding ruby-on-rails-3 rails-geocoder

我需要反转地理编码两个位置"从"和"到".

使用geocoder gem(http://www.rubygeocoder.com/)我尝试过:

  reverse_geocoded_by :from_lat, :from_long, :address => :from_string      
  reverse_geocoded_by :to_lat, :to_long, :address => :to_string   
  after_validation :reverse_geocode  
Run Code Online (Sandbox Code Playgroud)

但只有第二个(to_string)成功反向编码.

地理编码器宝石可以支持多个地理编码步骤吗?

eva*_*kes 6

我也把头撞在了墙上一段时间.

尝试创建自己的def:

after_validation :reverse_geocode_both
Run Code Online (Sandbox Code Playgroud)

...

def reverse_geocode_both
    start_coordinates = [self.from_lat, self.from_long]
    end_coordinates = [self.to_lat, self.to_long]
    self.from_string = Geocoder.address(start_coordinates)
    self.to_string = Geocoder.address(end_coordinates)
end
Run Code Online (Sandbox Code Playgroud)