我有以下情况:
- 表单字段类型
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,
));