2014-04-07 25 views
1

我想在綁定表單後拋出一個錯誤。在這裏我的代碼:Symfony2在綁定後拋出表單錯誤

$form = $this->createFormBuilder() 
      ... 
      ->add('date', 'birthday', array(
       'years' => range($year_18-90, $year_18), 
       'empty_value' => array('year' => $year_18-16) 
      ))->getForm; 

//Post and valid 
if ($form->isValid()) { 
      $formData = $form->getData(); 
      if ($formData['date']->getTimestamp() > $date_18) { 
       //if user is under 18, then throw an error in from 'date'/' birthday' 
      } 

我該怎麼做在Symfony2後方法後?

+0

的[從Symfony2的控制器添加字段特定錯誤]可能重複(http://stackoverflow.com/questions/12170440/adding-a-field-具體錯誤從控制器在symfony2) – craphunter

回答

6

是的,你可以這樣做:

use Symfony\Component\Form\FormError; 
//... 
$dateError = new FormError("Age must be greater than 18"); 
$form->get('date')->addError($dateError); 
+0

謝謝,但我如何拋出錯誤?看看這裏:http://stackoverflow.com/questions/25270157/command-to-throw-formerror。我很欣賞答案! – craphunter