【发布时间】:2017-04-13 12:30:49
【问题描述】:
我想在 Symfony 3 中自定义 form_errors 的渲染,因为我想获得(在我的 Twig remplate 中):
<div class="alert alert-danger">My error</div>
而不是:
<ul><li>My error</li></ul>
有可能吗?
我试过了:
{{ form_errors(form.name) ? '<div class="alert alert-danger">' ~ form_errors(form.name) ~ '</div>' : '' }}
但是 HTML 没有被解释,它可能不是很干净..
还有这个(recovery of vendor\symfony\symfony\src\Symfony\Bridge\Twig\Resources\views\Form\form_div_layout.html.twig line 307):
我超载了:
{%- block form_errors -%}
{%- if errors|length > 0 -%}
<ul>
{%- for error in errors -%}
<li>{{ error.message }}</li>
{%- endfor -%}
</ul>
{%- endif -%}
{%- endblock form_errors -%}
作者:
{%- block form_errors -%}
{%- if errors|length > 0 -%}
<ul>
{%- for error in errors -%}
<li>{{ error.message }}</li>
{%- endfor -%}
</ul>
{%- endif -%}
{%- endblock form_errors -%}
但是变量“error”没有定义
提前感谢您的帮助
【问题讨论】:
-
您是否尝试将此块添加到与您的表单相同的 Twig 模板中?
-
是的,多亏了这个,我解决了我的问题 :) webtipblog.com/override-symfony-2-form-element-twig-template
标签: php symfony twig symfony-forms