4

以下に説明するモデルがあります。

http://yuml.me/diagram/class/[製品]0..*-1[ブランド]

entityまた、すべてのブランドを含むドロップダウン リストを作成するフィールドを使用して、新しい製品を作成するためのフォームもあります。

ここで、ユーザーが別のテキスト フィールドでブランドを手動で指定できるようにするために、このリストに「その他」という値を追加します。

問題は、Symfony2 フォームでこのケースを管理するクリーンな方法 (たとえば、エンティティではないリストに「Other」という値を追加して、フォームの検証を機能させる方法) があるかどうかです。

4

1 に答える 1

2

あなたは2つの方法でそれを行うことができます.

  • FormEvents::BIND_CLIENT_DATAフォームイベントを購読できます。イベント メソッドでは、テキストから新しい Brandオブジェクトを作成して保存し、 を呼び出してフォームに ID を設定できます$event->setData($data)この料理本のエントリを参照してください。

また

  • データ トランスフォーマーを追加できます。そのreverseTransformメソッドでは、オブジェクトを作成して保存し、その ID を返すことができます。この料理本のエントリを参照してください。
于 2012-05-29T14:03:52.770 に答える