我需要geocode用户的地址进入纬度和广度经度存储在数据库中。
地址表
country_id: int
state_id: int
local_address: string
latitude: float
longitude: float
我有单独的countries and states
表。
所以,要获得lat&长期价值我需要这样的东西:
geocoded_by :address
def address
[local_address, state, country].compact.join(', ')
end
但问题是,这是在模型(地址类)中完成的,我需要访问其他表:countries&的状态。
所以,无法想出办法。任何工作建议都表示赞赏。
答案 0 :(得分:3)
在您的模型中,您需要与您的国家/地区表格建立关联 我假设您正在保存州id和country_id
class User < ActiveRecord::Base
belongs_to :state
belongs_to :country
geocoded_by :address
def address
[local_address, state.name, country.name].compact.join(', ')
end
end