我在 Symfony 4.2.5 中做 3 个表单,在加载状态和城市(estados 和 municipios)时都使用相同的代码,但只有这个表单让我发疯,因为有相同的代码,但它总是在“municipio”中返回 null ,当我打印 $request 它有 municipio=1 但在 $form->isValid() 中说 municipio 为 null 并且它在我添加 FormEvents 时开始
如果有人可以帮助我,我将不胜感激,我检查了我所有的代码,但这就是它的突破点。
$builder->get('estado')->addEventListener(FormEvents::POST_SUBMIT, function (FormEvent $event) {
$estado = $event->getForm()->getData();
if (null == $estado) {
$event->getForm()->getParent()->add('municipio', EntityType::class, [
'class' => 'App\Entity\Municipio',
'required' => true,
'placeholder' => '== Selecciona un municipio 1==',
'choices' => []
]);
} else {
$event->getForm()->getParent()->add('municipio', EntityType::class, [
'class' => 'App\Entity\Municipio',
'required' => true,
'placeholder' => '== Selecciona un municipio 2 ==',
'choices' => $estado->getMunicipios()
]);
}
}
);