我习惯于按照在http://railscasts.com/episodes/273-geocoder中看到的方式使用地理编码器 gem ,但是我的模型变得比给定的示例更复杂一些。
现在,我想使用 2 个模型:
-“City”,具有“name”属性
和
-“Location”,具有“latitude”、“longitude”和“city_id”属性
这样,位置将具有默认值纬度和经度值,然后我们可以精确它们。
问题是,在 Location 模型中,如何通过 City 模型中的名称指定位置是 geocoded_by ?
我正在寻找一些简单的东西,比如:
geocoded_by :city, :name
或者
geocoded_by self.city.name
感谢您的帮助。
编辑:以下是当前型号:
class Location< ActiveRecord::Base
attr_accessible :city_id, :latitude, :longitude
belongs_to :city
geocoded_by ??? (how to specify the city.name value ?)
after_validation :geocode
end
class City < ActiveRecord::Base
attr_accessible :name
has_many :locations
end