0
지오 코더 기능을 사용하려는 location_pickup 및 location_dropoff가있는 예약 모델이 있습니다. 모델 (아래)에서 지오 코더 매핑을 선언했지만, 어떻게 든 마지막 선언 (location_pickup) 만 데이터베이스에서 업데이트되고 있습니다. 여기에 뭐가 잘못되었나? 로렌조에 의해 제안 레일 지오 코더의 다중 주소 문제
class Booking < ActiveRecord::Base
belongs_to :user
geocoded_by :location_dropoff, :latitude => :location_dropoff_latitude, :longitude => :location_dropoff_longitude
geocoded_by :location_pickup, :latitude => :location_pickup_latitude, :longitude => :location_pickup_longitude
after_validation :geocode, if: :location_dropoff_changed?
after_validation :geocode, if: :location_pickup_changed?
validates :location_pickup, presence: true
validates :location_dropoff, presence: true
end
는 두 가지 방법을 정의하는 시도하지만,이 모델의 메소드 geocoded_by를 재정의 두 번째 시간을 geocoded_by 호출 할 때 여전히
class Booking < ActiveRecord::Base
before_validation :geocode_location_dropoff
before_validation :geocode_location_pickup
belongs_to :user
def geocode_location_dropoff
geocoded_by :location_dropoff,
latitude: :location_dropoff_latitude,
longitude: :location_dropoff_longitude
end
def geocode_location_pickup
geocoded_by :location_pickup,
latitude: :location_pickup_latitude,
longitude: :location_pickup_longitude
end
after_validation :geocode, if: :location_dropoff_changed?
after_validation :geocode, if: :location_pickup_changed?
validates :location_pickup, presence: true
validates :location_dropoff, presence: true
end
감사! 내 자신의 방법을 정의하고 독립적으로 지리적 위치를 지정하는 법. 나는 두 가지 다른 방법을 만들고 그것들을 전에 검증하려했습니다. 그게 작동하지 (질문에 피곤한 코드를 추가) – Mayank