時として、一つのフォームで同じ種類の複数のモデルを扱わなければならないことがあります。モデルとして表される複数の設定項目を扱うフォームです。この種のフォームは「表形式インプット」と呼ばれることもよくあります。セクションで扱います。実装する方法を示します。カバーすべき三つの異なる状況があり、それぞれ少しずつ異なる処理をしなければなりません。特定の数のデータベース・レコードを更新する不特定の数の新しいレコードを作成する一つのページでレコードを更新、作成、および、削除する前に説明した単一モデルのフォームとは対照的に、モデルの配列を扱うことになります。この配列がビューに渡されて、各モデルのためのインプット・フィールドが表のような形式で表示されます。ヘルパ・メソッドを使用します。送信されたデータをモデルの配列にロードします。モデルの配列を検証します。¶コントローラのアクションから始めましょう。モデルのプライマリ・キーでインデックスされた配列にデータを投入しています。フォーム・フィールドを特定するために使われます。全てのモデルを一度に検証します。渡して、二度目の検証を実行しないようにしています。ビューの中にあるフォームです。"[$index]value")->label($setting->name);}ActiveForm::end();ここで全ての設定項目について、それぞれ、項目名を示すラベルと、項目の値を入れたインプットをレンダリングしています。インプットの名前に適切なインデックスを追加することが肝腎です。それを見て、どのモデルにどの値を代入するかを決定するからです。新しいレコードを作成するのは、モデルのインスタンスを作成する部分を除いて、更新の場合と同じです。配列を初期値として作成し、少なくとも一個のテキスト・フィールドが常にビューに表示されるようにしています。受信したインプットの行数に合せて、配列にモデルを追加しています。このセクションはまだ執筆中です。