Ruby Geocoder多个反向地理编码器

时间:2011-11-02 22:05:20

标签: ruby-on-rails ruby-on-rails-3 reverse-geocoding rails-geocoder

我需要反转地理编码两个位置“from”和“to”。

使用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  

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

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

1 个答案:

答案 0 :(得分:6)

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

尝试创建自己的def:

after_validation :reverse_geocode_both

...

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