Ajax Symfony2。如何允许窗体忽略额外字段?

Ajax Symfony2。如何允许窗体忽略额外字段?,ajax,forms,symfony,cross-domain,Ajax,Forms,Symfony,Cross Domain,我需要将一些数据发布到我的Symfony表单中,并使用submit()方法进行此操作 但当请求包含一些额外数据时,我得到了错误: “此表单不应包含额外字段” 是否可以使用表单配置让表单丢失额外数据? 也许还有另一种方法可以做到这一点? 注意:我需要submit()方法,而不是handleRequest(),因为我是通过跨域ajax请求发布数据的,所以表单不能以这种方式提交。原因:isValid()返回false,因为isSubmitted()返回false p.S.当然,我可以创建服务,在将请求

我需要将一些数据发布到我的Symfony表单中,并使用
submit()
方法进行此操作

但当请求包含一些额外数据时,我得到了错误:

“此表单不应包含额外字段”

是否可以使用表单配置让表单丢失额外数据?

也许还有另一种方法可以做到这一点?

注意:我需要
submit()
方法,而不是
handleRequest()
,因为我是通过跨域ajax请求发布数据的,所以表单不能以这种方式提交。原因:
isValid()
返回
false
,因为
isSubmitted()
返回false

p.S.当然,我可以创建服务,在将请求传递到表单之前处理请求,但可能存在更优雅的方式。

在您的表单类型中:

    /**
     * @param OptionsResolver $resolver
     */
    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults(array(
            'data_class' => 'AppBundle\Entity\YourEntity',
            'translation_domain' => strtolower('entity_translation_domain'),
            'allow_extra_fields' => true,
        ));
    }

allow\u extra\u字段
将使您的表单能够接收额外数据

谢谢您的回答,它可以工作了!看起来,这个选项忽略了额外的数据,所以这就是我需要的。我不认为这是重复的。链接问题不考虑较新的Symfony版本。