【发布时间】:2013-03-10 16:51:13
【问题描述】:
我有 3 张桌子: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's gem 方法near,但我不知道如何构建此类任务的控制器层。
【问题讨论】:
-
不相关的旁注:上面的实体关系图使用了什么工具?
-
我只使用了 Keynote。我通常会画出每个结构以便更好地理解
-
谢谢。我不确定,因为它看起来很陌生。干得好。
标签: database ruby-on-rails-3 postgresql geolocation