之前修改窗體值我有以下情況:Symfony2中:如何驗證
- 表單字段類型
date
- 像
dd.mm.YYYY
- 驗證模式的輔助對象,輪流
12
到12.07.2012
或2.5
納入02.05.2012
等
我的問題是:我在哪裏調用轉換輸入值的方法?
當我從set
這個實體的方法調用它時,實際上這個值被改變了。但是當再次加載表單時(例如不完整的提交),會顯示舊值(如2.5
),而不是轉換後的值(2.5.2012
)。現在,我如何說明表單,實體內的值是否發生了變化?
也許有也是這樣做的,之間的另一種方式:
$form->bindRequest($request);
// do some fancy stuff here
if ($form->isValid()) {}
PHP
這是從實體:
/**
* @ORM\Column(type="datetime", nullable=true)
* @Assert\DateTime()
*/
protected $date_start;
這是從:
$builder->add('date_start', 'datetime', array(
'label' => 'Start Datum/Uhrzeit',
'date_widget' => 'single_text',
'time_widget' => 'single_text',
'date_format' => 'dd.MM.yyyy',
'with_seconds' => false,
'required' => false,
));
我在下面發佈了一個答案,但如果您需要更多的細節,隨時發佈您的表單類型和模型的代碼,我可能會得到更具體的。 – MDrollette 2012-07-05 16:56:54