2017-09-07 9 views
0

私のコントローラのフィールドフォームの値を送信ボタンで変更しようとしました。送信コントローラからフォームフィールドを変更する方法

私はこれを試してみてください。

if ($form->isSubmitted() && $form->isValid()) { 
      if($form->get('add_proprietario')->isClicked()){ 
    $form->get('idProprietario')->setData($proprietario->getId()); 
} 
} 

が、リターンエラー私はそれを行うことができますどのように

You cannot change the data of a submitted form. 

+1

うーん...フォームイベントを? @ArtOsiのように – ArtOsi

+0

が提案された場合、フォームイベントも良い考えです。 – kunicmarko20

答えて

0

エンティティで直接変更してください。

あなたはこのようなものがある場合:

$entity = new Entity(); 
$form = $this->createForm(EntityType::class, $entity); 

$form->handleRequest($request); 

if ($form->isSubmitted() && $form->isValid()) { 
    if ($form->get('add_proprietario')->isClicked()) { 
     $entity->setProprietario($proprietario->getId()) 
    } 
} 
関連する問題