0
我使用的地理編碼寶石軌生成地址緯度/經度。我實現了基於以下堆棧溢出問題的驗證:驗證/緯度與地理編碼寶石
型號
class Location < ActiveRecord::Base
attr_accessible :address1,
:country,
:latitude,
:longitude,
:name
validates :latitude, :presence => {message: "Not a valid location on Google Maps, please check name address & country fields" }
geocoded_by :address
after_validation :geocode, :if => :address_changed?
def address
[name, address1, country].compact.join(' ')
end
def address_changed?
attrs = %w(name address1 country)
attrs.any?{|a| send "#{a}_changed?"}
end
end
我的問題是,當用戶編輯自己的有效地址的地址無效地址解析器寶石不會更新經度/緯度字段。因此,即使地址不是,經度/緯度仍然有效。
我新的軌道,並試圖找到一種方式運行地理編碼之前設置經度/緯度字段爲零,但無法找到工作的方法。例如,我嘗試在我的編輯表單中添加以下內容:
<%= f.hidden_field :longitude, value: nil %>
<%= f.hidden_field :longitude, value: nil %>
謝謝,這完美! –