私はコレクションを持つフォームを持っています:
$builder->add('languages', 'collection', array(
'type' => new LanguageType(),
'allow_add' => true,
'allow_delete' => true,
'by_reference' => false
));
twig-template では、空の (LanguageType) で追加の行をレンダリングします。そのために、プロトタイプを使用してnameを置き換えます。
コントローラーでリクエストをバインドし、セッターで「空の」言語を破棄します。
public function addLanguage($lang)
{
if($lang->getLanguage())
{
$this->languages->add($lang);
}
// discard the others
}
何らかの理由で、「空の」行は NotBlank バリデーターを介して検証エラーをスローします。
私の唯一の有効な解決策は、raw-Request から空の行を削除することですが、それは醜いです。