既存のオブジェクトから取得したデータをフォームに事前入力する方法についてのガイダンスを探しています。メソッドsetDataで動作するはずだと思いますが、次のような単純なものを期待してい
$form->setData($existingObject)
ましたが、成功しませんでした。
より良い説明のために、簡単な例を見てみましょう。
ユーザーが個人データを入力するフォームがあります。form.factory を呼び出してコントローラにフォームを作成し、
$form = $this->get('form.factory')->create(new personType());
フォーム クラス "personType" があり、このフォーム クラスには "person" という data_class オブジェクトが定義されています。ユーザーがフォームを送信すると、データはオブジェクト person に保存され、このオブジェクトはセッションに保存されます。オプションでフォームを再度開き、セッションに保存されたオブジェクトに保存されたデータを入力する必要があります。