Symfony改变了'重复'字段的风格

时间:2015-01-13 12:33:51

标签: php symfony twig

我有一个带有重复字段的表单:

$builder->add('password', 'repeated', array( 'type' => 'password' ));

我希望这个重复的字段与其他字段的呈现方式不同 - 我该怎么做?我是Symfony和twig的新手,所以如果您对代码有建议,请添加一些有关代码放置位置的信息。

我的form.html.twig看起来像这样:

{{ form_widget(form) }}

提前致谢。

2 个答案:

答案 0 :(得分:5)

这是我使用twitter bootstrap显示重复字段的方式,当然你可以将这些类改为你正在使用的类

<form action="{{ path('passwordReset') }}" method="post" role="form">
    {{ form_errors(form) }}
    <div class="login-screen">
        <h4>Reset Your Password</h4>

        <div class="login-form">
            <div class="form-group">
                {{ form_widget(form.password.first, { 'attr': {'class': 'form-control', 'placeholder': 'Enter your password', 'value':''}  }) }}
                {% if(form_errors(form.password.first)) %}
                    <div class="alert alert-danger">{{ form_errors(form.password.first) }}</div>
                {% endif %}
                <label class="login-field-icon fui-lock" for="login-password"></label>
            </div>
            <div class="form-group">
                {{ form_widget(form.password.second, { 'attr': {'class': 'form-control', 'placeholder': 'Confirm your password', 'value':''}  }) }}
                {% if(form_errors(form.password.second)) %}
                    <div class="alert alert-danger">{{ form_errors(form.password.second) }}</div>
                {% endif %}
                <label class="login-field-icon fui-lock" for="login-name"></label>
            </div>
            <button class="btn btn-primary btn-lg btn-block" type="submit">Submit</button>
            <a class="login-link" href="{{ path('login') }}">Sign in</a>
        </div>
    </div>
    {{ form_rest(form) }}
</form>

您需要的是以下两个

{{ form_widget(form.password.first, { 'attr': {'class': 'form-control', 'placeholder': 'Enter your password', 'value':''}  }) }}
{{ form_widget(form.password.second, { 'attr': {'class': 'form-control', 'placeholder': 'Confirm your password', 'value':''}  }) }}

只需为它们指定要分配它们的类,使它们看起来不同。

答案 1 :(得分:1)

西洛

'first_options' => array('label' => 'form.password','attr' => array('class' => 'mystyle'))

formType中的类似内容,它为您的input元素添加一个类,让您自定义。