module Geocoder::Result

Public Instance Methods

city() click to toggle source

Additional Stuff

# File lib/geocoder/results/nominatim_decorator.rb, line 8
def city
  %w[city town village hamlet].each do |key|
    return @data['address'][key] if @data['address'].key?(key)
  end
  @data['display_name'].split(',').count > 3 ? @data['display_name'].split(',')[-3].strip : nil
  # return nil
end
city_code() click to toggle source

Additional Short-Names

# File lib/geocoder/results/google_decorator.rb, line 34
def city_code
  fields = [:locality, :sublocality,
    :administrative_area_level_3,
    :administrative_area_level_2]
  fields.each do |f|
    if entity = address_components_of_type(f).first
      return entity['short_name']
    end
  end
  return nil # no appropriate components found
end
country_code() click to toggle source
# File lib/geocoder/results/nominatim_decorator.rb, line 27
def country_code
  @data['address']['country_code'].present? ? @data['address']['country_code'].to_s.upcase : nil
end
district() click to toggle source
# File lib/geocoder/results/google_decorator.rb, line 14
def district
  fields = [:sublocality_level_1, :sublocality]
  fields.each do |f|
    if entity = address_components_of_type(f).first
      return entity['long_name']
    end
  end
  return nil # no appropriate components found
end
district_code() click to toggle source
# File lib/geocoder/results/google_decorator.rb, line 46
def district_code
  fields = [:sublocality_level_1, :sublocality]
  fields.each do |f|
    if entity = address_components_of_type(f).first
      return entity['short_name']
    end
  end
  return nil # no appropriate components found
end
street() click to toggle source

Additional Stuff

# File lib/geocoder/results/google_decorator.rb, line 8
def street
  if route = address_components_of_type(:route).first
    route['long_name']
  end
end
street_number() click to toggle source
# File lib/geocoder/results/nominatim_decorator.rb, line 23
def street_number
  @data['address']['house_number']
end
subdistrict() click to toggle source
# File lib/geocoder/results/google_decorator.rb, line 24
def subdistrict
  if subdistrict = address_components_of_type(:sublocality_level_2).first
    return subdistrict['long_name']
  end
  return nil # no appropriate components found
end
subdistrict_code() click to toggle source
# File lib/geocoder/results/google_decorator.rb, line 56
def subdistrict_code
  if subdistrict = address_components_of_type(:sublocality_level_2).first
    return subdistrict['short_name']
  end
  return nil # no appropriate components found
end