У меня есть модель адреса, которая содержит поля: number, street, city, post_code
.
Я использую метод под названием fulladdress
для интерполяции всех полей в одно, которое затем передается геокодеру, который возвращает долготу и широту для адреса.
Вот моя модель адреса:
class Address < ActiveRecord::Base
belongs_to :user
def fulladdress
"#{number} #{street}, #{city}, #{post_code}"
end
geocoded_by :fulladdress
after_validation :geocode, :if => :number_changed?
end
На данный момент геокодер обновляет долготу и широту только в том случае, если number
изменилось. Я хочу, чтобы геокодер запускался, если какое-либо из number, street, city, post_code
изменений. Каков наилучший способ сделать это?