看看这个网站:
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-%}块进行修改。
我想在Symfony 3中自定义form_errors的呈现方式,因为我想获取(在我的Twig模板中:
<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不会被解释,而且可能不是很干净。。
这(供应商\ 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 -%}
但是未定义变量“错误”
感谢您的帮助
我想在Symfony 3中自定义form_errors的呈现方式,因为我想获取(在我的Twig模板中):
看看这个网站:
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
看看这个网站:
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-%}块进行修改。