0
我添加了一個表單和PRE_SUBMIT
事件。Symfony2 - 在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
...
附:我會用SUBMIT
來獲取一個實體對象,但在這種情況下SUBMIT
事件來不及添加約束。
$ event-> getData()是請求數據,而$ form-> getData()是實體,但它是未提交的原始實體。 http://symfony.com/doc/current/form/events.html#component-form-event-table更多信息 –
這是我需要的,因爲狀態在提交時不會改變!請張貼它作爲答案,我會標記。 –