0
我有一个booking_pickup和location_dropoff的预订模型,我想使用地理编码器功能。我已经在模型中声明了geocoder映射(下面),但不知何故,只有最后一个声明(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
试图定义两种方法洛伦佐的建议,但它仍然无法正常工作
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