我是symfony2的新手,我已经设法实现了fosUserBundle和Braincrafted bootstrap bundle。
我正在尝试设置注册表单的样式以使用引导带和input-sm
类
用户名和电子邮件显示为input-sm但是2个密码字段拒绝调整大小到我已应用的类。
在fosUserbundle中的哪个地方配置了密码字段小部件
{% trans_default_domain 'FOSUserBundle' %}
{{ form_start(form, { 'style': 'horizontal', 'col_size': 'xs', 'label_col': 5, 'widget_col': 7, attr: {class: 'pull-left'}}) }}
{{ form_row(form.username, { attr: {class: 'input-sm'}}) }}
{{ form_row(form.email, { attr: {class: 'input-sm'}}) }}
{{ form_row(form.plainPassword, { attr: {class: 'input-sm'}}) }}
{{ form_row(form.plainPassword.second, { attr: {class: 'input-sm'}}) }}
<div class="col-sm-5"></div>
<div class="col-sm-7">
<input class="btn-primary btn-sm" type="submit" value="{{ 'registration.submit'|trans }}" />
</div>
{{ form_rest(form) }}
{{ form_end(form) }}
答案 0 :(得分:0)
FosUserBundle与否,您可以直接覆盖Twig表单渲染以实现此目的,请查看SF cookbook中的How to customize form rendering。
基本上,你可以通过将form_row分成标签,小部件和错误来更精确地在模板中更精确地定位输入(下面的“form_widget”)并应用正确的类:
{{ form_errors(form.plainPassword) }}
{{ form_label(form.plainPassword) }}
{{ form_widget(form.plainPassword) }}
您还可以直接在模板中对其进行贴图,为所需的输入类型生成自己的表单样式:
{% form_theme form _self %}
{% block integer_widget %}
<div class="integer_widget">
// Your custom layout
</div>
{% endblock %}
{% Block body %}
// Rendering your form, your custom layout will be used.
{% endblock %}
如果您想在其他地方使用它,您也可以在单独的模板中声明它,请参阅上面的食谱页面以了解具体方法。