2012-01-07 7 views
0

私のアプリでユーザーはトーナメントに関する情報を登録できます。ユーザーが有料の顧客である場合、追加情報を入力することができます。そうでないと、追加情報のフィールドは表示されずに無効になります。Railsでのフォームの混合

Iは、2つのオブジェクトとしてこれをレイアウト:Tournamenthas_one :tournament_extras前者と後者belongs_to :tournamentTournamentExtrasTournamentでもaccepts_nested_attributes_for :tournament_extras

私はこれを単一のフォームとして表示したいと思います。 2つのオブジェクトのフィールドは関連しています。つまり、開始日を追加することができます(Tournament)が、支払う顧客のみが終了日を追加することができます(TournamentExtrasへ)が、2つのフィールドは論理的にレンダリングされるため、形。

どうすればよいですか?

form_forfields_forのループを開いて、フィールドを追加する前に、私が好きなフィールドを追加できるようにしました。それはうまくいかなかった。フィールドループ(?)内でフォームオブジェクトを参照することはできません。

答えて

1

form_formとfields_forは互いに機能するはずです。ややこのため骨格の

は次のとおりです。

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

それは動作します、ありがとう。私はいくつかの名前を付けることから始めることができませんでした。 – fiskeben