1

simple_fields_forを使用して、Companyの2つのモデルとネストされたモデルAddressの単一のフォームに属性を保存するフォームがあります。私が試したform属性とnested_field属性Rails:ネストされたフィールドを持つフォーム内のフィールドの順序をカスタマイズする方法

を入れ替え私のフォームで

Company: 
-legal form 
-uploads 

Address: 
-name 
-website 

私はフィールド

-name (Address model) 
-legal form (Company model) 
-website (Address model) 
-uploads (Company model) 

の順序を変更したいので、

属性それに続くが、それはうまくいかないようだ。

<%= simple_nested_form_for @company do |f| %> 
    <%= f.simple_fields_for :address do |c| %> 
     <%= c.input :name %> 
    <% end %> 
    <%= f.input :legal_form %> 
    <%= f.simple_fields_for :address do |c| %> 
     <%= c.input :website %> 
    <% end %> 
    <%= f.input :uploads %> 
<% end %> 

どのように私はこの作品を作れますか?

答えて

3

すべての属性が整列しているようには見えません(あなたのアップロードはアドレスであり、ウェブサイトはあなたの属性リストにありましたが、フォームはこれと一致しません)。

ネストされたフィールドは、ビルドに依存してparamsハッシュのどの部分に配置されているかを示します。必要なビルダーを呼び出します。あなたが会社のフィールドを必要とする各場所で

<%= simple_nested_form_for @company do |f| %> 
    <%= f.simple_fields_for :address do |c| %> 
    <%= c.input :name %> 
    <%= f.input :legal_form %> 
    <%= c.input :website %> 
    <%= f.input :uploads %> 
    <% end %> 
    <%= f.submit %> 
<% end %> 

、あなたはビルダー fを呼ぶことにしますし、それぞれの場所で使用すると、アドレスフィールドを必要とする、あなたは、ビルダー cを呼ぶことにします - しかし、最小公分母内でそれらすべてを入れ子になったので、彼らはすべて利用可能です。

+0

それは素晴らしい答えです。私はこれを正確に探していた。 (ご注文の際に申し訳ありません)。乾杯、M – Matthias

関連する問題