当我尝试render an error message
关联到repeated password field
. 问题是invalid_message
如果我按如下方式实现树枝,则不会呈现,
{{ form_start(form, {'attr': {'class': 'form-horizontal', 'role': 'form', 'novalidate': 'novalidate'}}) }}
<div class="form-group {% if form.password.vars.errors|length > 0 %}has-error{% endif %} {% if form.password.vars.required == 'true' %}required{% endif %}">
{{ form_label(form.password.first, "Password") }}
<div class="col-sm-8">
{{ form_widget(form.password.first) }}
<span class="help-block">{{ form_errors(form.password) }}</span>
</div>
</div>
<div class="form-group {% if form.password.vars.errors|length > 0 %}has-error{% endif %} {% if form.password.vars.required == 'true' %}required{% endif %}">
{{ form_label(form.password.second, "Confirm password") }}
<div class="col-sm-8">
{{ form_row(form.password.second) }}
</div>
</div>
........
但是,如果我使用form_row
,
{{ form_start(form, {'attr': {'class': 'form-horizontal', 'role': 'form', 'novalidate': 'novalidate'}}) }}
<div class="form-group {% if form.password.vars.errors|length > 0 %}has-error{% endif %} {% if form.password.vars.required == 'true' %}required{% endif %}">
{{ form_label(form.password.first, "Password") }}
<div class="col-sm-8">
{{ form_row(form.password.first) }}
<span class="help-block">{{ form_errors(form.password) }}</span>
</div>
</div>
<div class="form-group {% if form.password.vars.errors|length > 0 %}has-error{% endif %} {% if form.password.vars.required == 'true' %}required{% endif %}">
{{ form_label(form.password.second, "Confirm password") }}
<div class="col-sm-8">
{{ form_row(form.password.second) }}
</div>
</div>
........
错误显示在密码文本框的顶部(这不是我放置错误的区域,因为span
它实际上位于文本框下方)并且也没有突出显示文本框。我尽力解决这个问题,但没有运气。如果您的专家可以提供任何专家指导来解决此问题,我将不胜感激。:)
仅供参考:表单控制器上的重复密码
$builder->add( 'password', 'repeated', array( 'type' => 'password',
'required' => true,
'invalid_message' => ErrorMessages::PASSWORDS_DONOT_MATCH,
'options' => array('attr' => array('class' => 'password-field form-control')),
'first_options' => array('label' => false,
'label_attr'=>array('class'=>'col-sm-3 control-label')),
'second_options' => array('label' => false,
'label_attr'=>array('class'=>'col-sm-3 control-label'))));