我添加了一个表单和PRE_SUBMIT
事件。
$builder->addEventListener(FormEvents::PRE_SUBMIT, array($this, 'onPreSubmit'));
现在当我在事件中转储表单数据时,我得到一个数组而不是一个对象。
public function onPreSubmit(FormEvent $event)
{
$form = $event->getForm();
/** @var Offer $offer */
$offer = $event->getData();
var_dump($offer);
die;
}
在此事件中,我想检查不在表单中的实体的状态字段,并根据状态向某些字段添加一些约束。
数组不包含实体的id
...
P.S。我会使用SUBMIT
来获取实体对象,但在这种情况下,SUBMIT
事件为时已晚,无法添加约束。
答案 0 :(得分:3)
$ event-> getData()是请求数据,$ form-> getData()是实体,但它是原始实体而不是提交的实体。 有关详细信息,请参阅http://symfony.com/doc/current/form/events.html#component-form-event-table