Symfony2のFormコンポーネントは、symfony 1.x系から大きく進化したものの1つです。Formコンポーネントにはさまざまなウィジェット(Typeと呼ぶ)が組み込まれていますが、その中でも特殊なのがコレクションに対応するCollectionTypeです。要素数が可変の項目を扱う場合に、CollectionTypeを使います。 アンケートシステムごく簡単なアンケートシステムを考えてみましょう。フォームの画面は、以下のようになります。 以下のようなヘッダ/明細構成のデータモデルを使います。 データモデルに対応させて、AnswerエンティティクラスとAnswerDetailエンティティクラスを用意し、1対多のリレーション(One-to-Many)を設定します。注目するのは、データ構造としてはAnswerに対応するAnswerDetailの数は不定(可変)であるという点です。 親子関