在Symfony2中重写表单标题


Overriding form title in Symfony2

我有一个使用

构建的Symfony表单
class BracketCommandForm extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
    //...
    }
    public function getName() {
        return 'bracket_command_form';
    }
}

当这个表单被渲染时,它会出现这个标题类似的<legend>New bracket command</legend>,在它下面是实际的表单。

我想重写图例,而不改变表单的名称或其他任何东西。这能做到吗?如果有,在哪里?

任何提示感谢!

该文本不是来自您的FormType类,它是从Controller(默认在newAction函数)传递

在你的控制器中试试

$form = $this->createForm(new BracketCommandForm (), $command, array(
        'show_legend' => true, //false if you don't want the legend at all
        'label' => 'My Text',
    ));

或者,我相信您可以将此作为表单

的默认值的一部分。
public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        $resolver->setDefaults(array(
            'label' => 'My Text',
        ));
    }