forms - 如何自定义 Symfony 表单模板中的多个字段?
问题描述
我在 Symfony 3.4 项目中有一个表单。我可以正确渲染它,这就是我得到的:
<form name="registration" method="post">
<div id="registration">
<div>
<label for="registration_email" class="required">E-mail címed</label>
<input type="email" id="registration_email" name="registration[email]" required="required" class="form-control">
</div>
<div>
<label for="registration_name" class="required">Vezetékneved és keresztneved</label>
<input type="text" id="registration_name" name="registration[name]" required="required" class="form-control">
</div>
<div>
<label for="registration_password" class="required">Jelszó</label>
<input type="password" id="registration_password" name="registration[password]" required="required" class="form-control">
</div>
<div>
<label for="registration_password_repeat" class="required">Jelszó újra</label>
<input type="password" id="registration_password_repeat" name="registration[password_repeat]" required="required" class="form-control">
</div>
<div>
<button type="submit" id="registration_submit" name="registration[submit]" class="btn btn-primary">Regisztráció</button>
</div>
<input type="hidden" id="registration__token" name="registration[_token]" value="r8KLMX7OCB6tDWJzHOp8_U-P4MjLI3PiOLTeJsvUXTY">
</div>
</form>
我想让每个表单字段都包裹在一个具有“ form-group
”类的 div 中。为此,我必须一一自定义所有字段类型,例如:
{% block text_widget %}
<div class="form-group">
{{ block('form_widget_simple') }}
</div>
{% endblock %}
{% block password_widget %}
<div class="form-group">
{{ block('form_widget_simple') }}
</div>
{% endblock %}
{% block email_widget %}
<div class="form-group">
{{ block('form_widget_simple') }}
</div>
{% endblock %}
有没有办法将此应用于所有类型的字段类型?,例如:
{% block *_widget %}
<div class="form-group">
{{ block('form_widget_simple') }}
</div>
{% endblock %}
解决方案
我找到了答案。首先,我想覆盖row
not widget
,而不是命名特定类型,我必须使用form_row
,所以{% block text_row %}
我需要{% block form_row %}
并且这适用于所有类型的输入行。
推荐阅读
- math - 在 Maxima 中声明一个动态常数
- mongodb - 如何将 Mongodb Atlas 连接到 Spring
- c - 通过函数将某些源文件中的静态指针暴露给 main.c
- asp.net-core - 如何在多个 Web 应用程序之间共享声明?
- javascript - 向 html 输入元素添加默认值会冻结递增/递减功能
- php - 在 symfony 中增加会话生命周期
- discord.py - Discord.py move_to
- spring-webflux - WebFlux + RSocket + 弹簧
- java - 为 TemporaryFolder JUnit4 命名
- angular - 背景图像更改后,BackgroundSize 不起作用