使用symfony和form_widget()禁用autoescape

时间:2014-01-13 08:23:42

标签: php symfony

使用Symfony 2,我正在尝试使用

打印出标签
form_widget(form.client)

我正在尝试打印的标签包含实际的HTML标记:

$builder->add('client', 'text', array('label' => '<a href="#">Client</a>'));

但Symfony会自动调整标签并将其打印为文本而不是HTML。所以我试图同时使用

form_widget(form.client) | raw

{% autoescape false %} form_widget(form.client) {% endautoescape %}

但这两种方法都没有帮助我,输出仍被视为文本而不是HTML。 我错过了一些设置还是我错了?

谢谢!

2 个答案:

答案 0 :(得分:2)

不要将HTML放入您的课程!使用Custom Form rendering自定义标签的呈现方式。

答案 1 :(得分:0)

我认为Twig过滤器应该在括号内,而不是在外面 - 你是否尝试过这样:

form_widget(form.client | raw)

另外,我建议不要在类中添加标记,而是直接添加到模板中:

<a href="{{ your.variable }}"> {{ form_label(form.client) }} </a>