我想使用表单生成器在symfony中将CSRF错误冒泡设置为false。
我以为这样就可以了
$builder->get('_token')->setErrorBubbling(false);
但它给了我
名为"_token"的子项不存在。
csrf_field_name设置为"_token"。那么,令牌是在我的表单构建之后生成的吗?你知道我该怎么做吗?
非常感谢Dave
如果您想禁用CSRF令牌,您有两个选项:
在控制器上创建表单时,传递一个选项:
$form = $this->createForm(new AcmeForm(), $acme, array(
'csrf_protection' => false
));
或者作为表单类的默认选项:
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'csrf_protection' => false
}