2012-01-07 51 views
0

在我的应用程序中,用户可以注册关于锦标赛的信息。如果用户是付费用户,她可以填写其他信息,否则其他信息的字段不可用(可见但禁用)。Rails中的混合形式

我把这个作为两个对象:TournamentTournamentExtras其中前者has_one :tournament_extras和后者belongs_to :tournamentTournamentaccepts_nested_attributes_for :tournament_extras

我想这显示为一个单一的形式。两个对象中的字段是相关的,这意味着您可以添加开始日期(至Tournament),但只有付费客户可以添加结束日期(至TournamentExtras),但由于这两个字段在逻辑上已实现,所以它们应该在形成。

我该怎么做?

我试图打开form_forfields_for循环与相互之间(添加任何领域之前)希望我可以添加任何我喜欢的领域。这没有用;显然你不能在字段loop(?)内引用表单对象。

回答

1

form_form和fields_for应该相互协作。

有点为这个骨架是:

form_for(@tournament) do |f| 
    f.fields_for(@tournament.tournament_extra) do |g| 
    end 
end 
+0

它的工作原理,谢谢。我想,因为一些命名的东西,我无法开始工作。 – fiskeben 2012-01-07 16:05:35