[英]Rails geocoder gem issues
我正在使用地理編碼器gem,我需要為模型編寫開始和結束地址,但是我不確定是否可以使用此gem完成此操作,如果我能夠正確執行此操作。 如果使用gem無法做到這一點,是否有另一種資源可以讓我在同一表單上對兩個位置進行地理編碼? 這是我想要做的一個例子,但它只是通過第二個地址進行地理編碼。
geocoded_by :start_address
before_validation :geocode
geocoded_by :delivery_address, :latitude => :end_latitude, :longitude => :end_longitude
before_validation :geocode
如果你看一下它看起來好像有一個選項哈希會被覆蓋的active_record.rb和base.rb。
我認為有兩種選擇:將您的地址移動到包含(加入)模型(如Address
或其他東西),或者fork地址解析器按鍵有多個選項。 第一個更容易,並解決了問題。 第二個更酷(可能與我自己一起玩kata)。
所以發生的事情只是簡單的紅寶石......如果你這樣做:
class Question
def ask
"what would you like?"
end
def ask
"oh hai"
end
end
Question.new.ask
=> "oh hai"
最后一個方法定義獲勝...所以當你聲明兩個geocoded_by
方法時,第二個是重要的方法。
我認為你將不得不使用gem進行手動地理編碼
before_validation :custom_geocoding
def custom_geocoding
start_result = Geocoder.search(start_address)
end_result = Geocoder.search(delivery_address)
# manually assign lat/lng for each result
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.