지오 코더를 사용하고 있고 위치라는 모델이 있습니다. 이 모델에는 경도, 위도 및 주소가 포함되어 있습니다. 내가 원하는 것은 경도와 위도 또는 주소를 입력하는 옵션을 사용자에게 제공하는 것입니다. 그 중 하나가 가득 차면 나머지 정보를 채우십시오. 그래서 여기 내가레일즈 모델에서 두 가지 방식으로 지오 코딩
before_validation :check
def check
if self.address.blank?
reverse()
else
geo()
end
end
def reverse
reverse_geocoded_by :latitude, :longitude,
:address => :address
after_validation :reverse_geocode
end
def geo
geocoded_by :address
after_validation :geocode
end
을했다하지만 난 내가 할 무엇인지 확실하지 않다 다음 undefined method reverse_geocoded_by
을 얻고 무엇을!
내 유일한 관심사, 미안하지만 난 여전히 루비에 새로운, self.location = .... ReverseLocation.create (...) 어떻게 정의입니까? 내 모델, 내 컨트롤러, 그리고 내 모델에 있다면, 그때 내가 올바른 위치에 유형을 정의해야합니다 – Jseb
그것은 컨트롤러 또는 응용 프로그램 디자인에 따라 모델 수 있습니다. 위치 매개 변수를 별도로 캡처하고 적절한 종류의 위치 객체를 만든 다음 연관된 위치가있는 레코드에 할당하는 것이 좋습니다. – tadman