0
私はカスタムフォームビルダーを作成しています。Rails Complexグループによるグループ化
フォーム has_many セクション。
セクション has_many フィールド。
フィールド has_many User_Values。
User_Valuesテーブルには、という名前のテーブルがあります。クローンされたインデックスです。ユーザーがセクションの複製を作成しても、セクションを一意に保つ必要がある場合に使用します。
私の質問:
誰かが私には、フィールドのユーザー値のcloned_indexすることにより、すべてのセクション、グループのフィールドというクエリを記述助けることができます。
私が現在持っている:
form.sections.each do |section| section.fields.each do|field|
field.user_values.group_by(&:cloned_index)
end
これは現在、仕事とフォローするのは非常に厳しいですしません。これを行う簡単な方法があると私は確信しています。
でグループ化されたフォームのフィールドを返します
これを試してみグループにしたい場合は上記のクエリは
sections
がcloned_index
でグループ化された戻りますデータモデルがこの複雑さの原因となっていることが私には分かります。あなたはそのモデルに制限されていますか? fieldとuser_valuesの間にブリッジテーブルを追加することをお勧めします。また、「スルー」関係を利用することもできます。フォームは、例えば、 'has_many:fields、through::section'を使用することができます。ビジネス上の問題を説明すると、私はおそらくより良い提案をすることができます。 –