gpt4 book ai didi

symfony - 如何在Symfony 2/Twig中更改form_row行为

转载 作者:行者123 更新时间:2023-12-04 13:17:25 27 4
gpt4 key购买 nike

默认情况下,form_row(form.name)呈现为以下形式:

<div><label for="form_name" class=" required">Name</label><input type="text" id="form_name" name="form[name]" required="required" maxlength="45" value=""></div>

我如何/在哪里可以将 form_row()的行为更改为例如:
<div class="someClassName"><label for="form_name" class=" required">Name</label></div><div class="someOtherClassName"><input type="text" id="form_name" name="form[name]" required="required" maxlength="45" value=""></div>

最佳答案

您可以检查以下URL:http://symfony.com/doc/2.0/cookbook/form/form_customization.html#cookbook-form-theming-methods

有一段关于自定义form_row()的段落。

这是一个简单的例子。默认情况下,form_row()将创建一个简单的html结构,如下所示:

枝条:

{{ form_row(form.email, { 'label' : 'Your email address' }) }}

HTML:
<div>
<label for="register_email" class=" required">Your email address</label>
<input type="email" id="register_email" name="register[email]" required="required" />
</div>

因此,根据文档,您可以创建一个新的 Twig 模板,并在该字段和标签周围添加class =“form_row”。将其放在YourBundle/views/Form/fields.html.twig中,并在其中放置以下代码:
{% block field_row %}
<div class="form_row">
{{ form_label(form) }}
{{ form_errors(form) }}
{{ form_widget(form) }}
</div>
{% endblock field_row %}

在您的模板文件中,添加以下行:
{% form_theme form 'YourBundle:Form:fields.html.twig' %}

现在,将使用您创建的该文件中的form_row模板,并将返回以下HTML代码:
<div class="form_row">
<label for="register_email" class=" required">Email</label>
<input type="email" id="register_email" name="register[email]" required="required" />
</div>

希望对您有所帮助。

关于symfony - 如何在Symfony 2/Twig中更改form_row行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8405894/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com