[英]How to custom HTML form_errors in Symfony
我想在 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 没有被解释,它可能不是很干净..
这(恢复 vendor\\symfony\\symfony\\src\\Symfony\\Bridge\\Twig\\Resources\\views\\Form\\form_div_layout.html.twig 第 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 -%}
但是变量“错误”没有定义
在此先感谢您的帮助
看看这个网站:
https://symfonycasts.com/screencast/symfony-forms/form-theme-create#play
您需要修改以下文件
vendor/symfony/symfony/src/Symfony/Bridge/Twig/Resources/views/Form/bootstrap_3_layout.html.twig
并搜索{% block form_errors -%}
块进行修改。
你可以在这里查看更多信息:
但这不是正确的方法,好的方法是通过将该块复制到另一个树枝模板来覆盖此文件,修改它并将此模板调用到您页面的树枝模板中。
以下是解释:
https://symfonycasts.com/screencast/symfony-forms/form-theme-create#play
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.