Php 在Symfony2 FormBuilder中设置窗体的目标属性

Php 在Symfony2 FormBuilder中设置窗体的目标属性,php,symfony,symfony-forms,formbuilder,Php,Symfony,Symfony Forms,Formbuilder,我需要使用FormBuilder在Symfony2中设置表单的target属性 我试过这个: $fb = $this->createFormBuilder(); $fb->setAttribute('target', '_top'); 但是它不起作用 为什么? 如何执行此操作?尝试将其作为构造函数参数(在选项中)传递,如下所示: $fb = $this->createFormBuilder(null, array('attr' => array('target' =&g

我需要使用
FormBuilder
Symfony2
中设置表单的
target
属性
我试过这个:

$fb = $this->createFormBuilder();
$fb->setAttribute('target', '_top');
但是它不起作用
为什么?

如何执行此操作?

尝试将其作为构造函数参数(在选项中)传递,如下所示:

$fb = $this->createFormBuilder(null, array('attr' => array('target' => '_top')));

记住将表单模型数据(如果有的话)作为第一个参数传递。

扩展Debreczeni的答案;您可以在表单类中定义默认选项:

使用Symfony\Component\OptionsResolver\OptionsResolver;
公共函数配置选项(选项解析器$resolver)
{
$resolver->setDefaults([
'attr'=>[
“目标”=>“\u顶部”,
],
]);
}