Symfony 4.2事件POST_SUBMIT返回null

时间:2019-06-05 01:40:18

标签: symfony symfony-4.2

我在Symfony 4.2.5中使用加载状态和城市(estados和municipios)时用相同的代码编写3种形式,但是只有这种形式使我发疯,因为具有相同的代码,但所有代码都无效,它总是在返回null “ municipio”,当我打印$ 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()
            ]);
        }
    }
    );

1 个答案:

答案 0 :(得分:0)

我已经复制了我的字段,一个在添加时在buildForm中复制,另一个在事件中导致了不良行为。

Symfony不要说我们不能添加一个字段超过1次,并且在我需要提交表单并且我的字段未被识别并且始终为空值之前,不会显示任何错误。

我刚刚删除了$ builder-> add('municipio'),一切正常。