你会如何在Rails中做到这一点?

时间:2012-02-14 02:36:13

标签: ruby-on-rails ruby ruby-on-rails-3 form-for

所以我仍然可以放弃一周前我终于开始学习Rails的免责声明......

我正在构建一个应用程序,该应用程序将列出我使用的多个波段的事件。每个活动都有一个场地,每个场地都有很多活动。这现在反映在我的模型中......

class Venue < ActiveRecord::Base
  has_many :events
end

class Event < ActiveRecord::Base
  belongs_to :venue
end  

简单吧?

我试图解决的问题是数据输入应该如何发生?设置将暗示用户将创建场地,然后向其添加事件。然而,这次活动真的是我的焦点。最符合逻辑的输入数据的工作流程是1)输入日期2)输入城市/州3)选择该城市的场地。有些场地已经在系统中,有些则不会。当用户在填写位置数据后开始输入场地名称时,表格将开始建议与位置和打字相匹配的各种场所(上帝知道我将如何进行这项工作,但那是另一个夜晚的问题)。事件的所有位置数据都存储在Venue表中。 Event表只存储该事件的细节(date,venue_id,artist_id等)。

您是否可以使用form_for Venue模型和&amp;使用fields_for作为事件模型?我想这似乎是最有意义的,但它在我脑海中似乎是错误的。我输入的越多,我就越觉得我在思考这个问题,但是如果能够得到一些关于如何设置它的反馈会很好。

由于

1 个答案:

答案 0 :(得分:0)

既然你说这个事件真的是焦点,我会做form_for @event。让用户输入您需要的日期,艺术家,描述和任何其他特定于事件的数据,然后使用某种jQuery auto-complete plugin作为场地。该自动完成程序需要将venue_id分配给作为事件表单的一部分提交的隐藏输入,并且将负责创建关联。