이전 버전의 geokit 플러그인을 rails 2.3 앱에서 사용하고 있었고이 최신 버전으로 업데이트했습니다. 보석.Geokit-rails 플러그인 - 반환 된 GeoLoc 객체에서 to_json을 호출 할 수 없습니다. 순환 참조 오류가 발생했습니다.
이전 버전에서는 .geocode 메서드에서 반환 한 개체를 json으로 변환 할 수있었습니다. 그냥 to_json 메서드를 호출하면됩니다.
그러나 이것은 새 버전에서 나옵니다.
to_json을 호출하면 순환 참조 오류가 발생하는 새로운 GeoLoc에 @all 속성이 있음을 발견했습니다.
<Geokit::GeoLoc:0x3837be4 @full_address="Phoenix, AZ, USA", @city="Phoenix", @provider="google", @country_code="US", @accuracy=4, @street_address=nil, @lng=-112.073821, @precision="city", @zip=nil, @success=true, @all=[#<Geokit::GeoLoc:0x3837be4...>], @lat=33.448263, @state="AZ">
그리고 여기 당신이 그것에 to_json 호출하면 오류입니다 : 여기
오브젝트의 예는 반환ActiveSupport :: JSON :: CircularReferenceError (객체 참조 자체)
"json"을 사용하여 jquery를 통해지도에 마커를 플롯합니다. 물론 GeoLoc 결과에서 내 문자열을 만들어 json으로 변환 할 수는 있지만 더 많은 코드입니다 ...
그 속성이 새 버전에 추가 된 이유와 다른 방법이 있는지 알 수 있습니다. geoLoc 결과를 json으로 직접 변환 하시겠습니까? 안녕
감사합니다. Andre. 그것은 완전히 효과가있었습니다. –