gpt4 book ai didi

symfony - Twig表单主题-form_label类属性

转载 作者:行者123 更新时间:2023-12-04 03:22:01 25 4
gpt4 key购买 nike

我一直在尝试覆盖form_row Twig扩展名,以便可以呈现Twitter Bootstrap样式的行。 Twitter boostrap表单行应如下所示:

<div class="control-group">
<label class="control-label" for="idOfMainInput">Label Name:</label>
<div class="controls">
<input type="text" id="idOfMainInput" name="someDumbName">
</div>
</div>

基本的wig div样式form_row块在 this link中定义如下:
{% block form_row %}
{% spaceless %}
<div>
{{ form_label(form) }}
{{ form_errors(form) }}
{{ form_widget(form) }}
</div>
{% endspaceless %}
{% endblock form_row %}

因此,我的想法是仅放置必要的div,并在必要时添加类条目的硬代码(即在主div中),然后将``attr''值传递给form_label,form_errors和form_widget部分。我现在已经取出了form_errors,只是为了不至于太深了。这是我尝试过的:
{% form_theme form _self %}
{% block form_row %}
{% spaceless %}
<div class="control-group">
{{ form_label(form, 'test label name', { 'attr': {'class': 'control-label'} }) }}
<div class="controls">
{{ form_widget(form) }}
{{ form_errors(form) }}
</div>
</div>
{% endspaceless %}
{% endblock form_row %}

但是,问题出在我无论如何都尝试,form_label扩展名不使用“control-label”作为我的类(如果存在,则应根据源代码将其附加,例如“required”)。这是我查看渲染页面的源时得到的:
<div class="control-group">
<label for="form_rsa_id" class="required">test label name</label>
<div class="controls">
<input type="number" id="form_rsa_id" name="form[rsa_id]" required="required" />
</div>
</div>

如您所见,class =“required”存在,并且取自基本表单对象属性,但它应该是class =“required control-label”,不是。

Kinda在这里不知所措,因为文档(以及源代码)都指出应该使用符号“form_label(view,label,variables)”。链接到docs here

最佳答案

我认为您需要使用label_attr而不是attr

关于symfony - Twig表单主题-form_label类属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15744012/

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