我有2个表格。一个是带有字段和集合的主要表单,在此字段中是另一个表单。在每个表单(父表和子表)上,我添加了一个PRE_SUBMIT订阅者。现在,我的问题是,我想在子事件上执行PRE_SUBMIT后加载特定于父表单的方法。
实际上,在文档之后,尽管我优先考虑,但我总是这样做:
parent::PRE_SUBMIT -> child::PRE_SUBMIT
按照我想要的方式:
parent::PRE_SUBMIT -> child::PRE_SUBMIT -> parent::PRE_SUBMIT(other)
你知道是否有可能以这种方式做到这一点?
答案 0 :(得分:0)
删除子项上的事件PRE_SUBMIT(仅为父项添加),并在事件处理程序中为您的孩子执行特定代码。
E.g。
public function yourPresubmitMethod(FormEvent $event)
{
$form = $event->getForm();
// Code before
// Code for each child
foreach ($form as $child)
{
$child->theChildPreSubmitMethod();
}
// Code after
}