我有三个表格:
每个物体都有几个位置,每个位置都有几个酒店(默认情况下半径20英里)。
我的模型(稍微简化一下以集中精力处理主要问题)。
我希望创建一个搜索表单,用户可以输入对象的名称和搜索半径。
输出应该是所有酒店的列表,这些酒店位于距离每个位置对应的对象中心不超过给定半径(小于或等于20英里)的范围内。
我想使用Geocoder宝石方法
Objects
,Locations
和Hotels
。每个物体都有几个位置,每个位置都有几个酒店(默认情况下半径20英里)。
我的模型(稍微简化一下以集中精力处理主要问题)。
object.rb
attr_accessible :name
has_many :locations
has_many :hotels
location.rb
attr_accessible :name, :address, :longitude, :latitude
has_many :objects
has_many :hotels
hotels.rb
attr_accessible :name, :address, :longitude, :latitude
has_many :objects
has_many :locations
我希望创建一个搜索表单,用户可以输入对象的名称和搜索半径。
输出应该是所有酒店的列表,这些酒店位于距离每个位置对应的对象中心不超过给定半径(小于或等于20英里)的范围内。
我想使用Geocoder宝石方法
near
,但我不确定如何构建这种任务的控制器层。