1
Geocoder gem으로 advanced geocoding 섹션을 사용하면 작동하지 않을 수 있습니다. 나는 기본적으로 Google Maps Documentation에있는 모든 주소 구성 요소 유형을 가져다가 지오 코더 :: 결과 블록의 안쪽에 넣어 :지오 코더 보석 : 특정 Google지도 결과를 지오 코딩 할 수 없습니다.
geocoded_by :street_address do |obj,results|
if geo = results.first
obj.route = geo.route
obj.intersection = geo.intersection
obj.political = geo.political
obj.country = geo.country
obj.administrative_area_level_1 = geo.administrative_area_level_1
obj.administrative_area_level_2 = geo.administrative_area_level_2
obj.administrative_area_level_3 = geo.administrative_area_level_3
obj.colloquial_area = geo.colloquial_area
obj.floor = geo.floor
obj.room = geo.room
end
end
after_validation :reverse_geocode
그러나 나는이 오류를 얻을 : 나는 그것을 제거하면
NoMethodError in StoresController#create
undefined method `route' for #<Geocoder::Result::Google:0x6939150>
을 이 객체는 intersection
과 같이 다음 객체로 넘어갑니다.
무엇이 문제입니까? 당신이 geo.address_components_of_type(:route)
- (Object) address_components_of_type(type)
Get address components of a given type. Valid types are defined in Google's Geocoding API documentation and include (among others):
:street_number
:locality
:neighborhood
:route
:postal_code
그래서 API 문서에서