class Geocoder::Result::Amap
Public Class Methods
response_attributes()
click to toggle source
Get address components of a given type. Valid types are defined in Baidu’s Geocoding API documentation and include (among others):
:business :cityCode
# File lib/geocoder/results/amap.rb, line 77 def self.response_attributes %w[roads pois roadinters] end
Public Instance Methods
address()
click to toggle source
# File lib/geocoder/results/amap.rb, line 12 def address formatted_address end
address_components()
click to toggle source
# File lib/geocoder/results/amap.rb, line 50 def address_components @data['addressComponent'] || @data end
city()
click to toggle source
# File lib/geocoder/results/amap.rb, line 24 def city address_components['city'] == [] ? province : address_components["city"] end
coordinates()
click to toggle source
# File lib/geocoder/results/amap.rb, line 6 def coordinates location = @data['location'] || @data['roadinters'].try(:first).try(:[], 'location') \ || address_components.try(:[], 'streetNumber').try(:[], 'location') location.to_s.split(",").reverse.map(&:to_f) end
country()
click to toggle source
# File lib/geocoder/results/amap.rb, line 62 def country "China" end
country_code()
click to toggle source
# File lib/geocoder/results/amap.rb, line 66 def country_code "CN" end
district()
click to toggle source
# File lib/geocoder/results/amap.rb, line 28 def district address_components['district'] end
formatted_address()
click to toggle source
# File lib/geocoder/results/amap.rb, line 46 def formatted_address @data['formatted_address'] end
postal_code()
click to toggle source
# File lib/geocoder/results/amap.rb, line 58 def postal_code "" end
province()
click to toggle source
# File lib/geocoder/results/amap.rb, line 20 def province address_components['province'] end
state()
click to toggle source
# File lib/geocoder/results/amap.rb, line 16 def state province end
state_code()
click to toggle source
# File lib/geocoder/results/amap.rb, line 54 def state_code "" end
street()
click to toggle source
# File lib/geocoder/results/amap.rb, line 32 def street if address_components["neighborhood"]["name"] != [] return address_components["neighborhood"]["name"] elsif address_components['township'] != [] return address_components["township"] else return @data['street'] || address_components['streetNumber'].try(:[], 'street') end end
street_number()
click to toggle source
# File lib/geocoder/results/amap.rb, line 42 def street_number @data['number'] || address_components['streetNumber'].try(:[], 'number') end