1

我正在为用户端使用 Symfony2 和 FOSUserBundle 开发一个网站。我正在尝试自定义注册表单,并且正在尝试一些问题。

  1. 我试图按照文档在字段旁边包含字段错误,但它只显示在表单顶部;
  2. 当两个密码不同时,表格顶部会出现错误:该值无效。这不是很清楚,我想把它翻译成法语,但我似乎在语言文件中找不到它。我曾经翻译过所有的表格,除了那个错误。

这是我的字段模板:

{% block field_errors %}
{% spaceless %}
{% if errors|length > 0 %}
<ul class="list_error">
{% for error in errors %}
<li>{{ error.messageTemplate|trans(error.messageParameters, 'validators') }}</li>
{% endfor %}
</ul>
{% endif %}
{% endspaceless %}
{% endblock field_errors %}


{% block field_row %}
{% spaceless %}
<tr>
    <td>
        <label for="{{ form.vars.id }}">{{ form.vars.id|trans( {}, "FOSUserBundle" ) }}</label>
    </td>
    <td>
        {{ form_widget(form) }}
        {{ form_errors(form) }}
    </td>
</tr>
{% endspaceless %}
{% endblock field_row %}
4

1 回答 1

1

“无效”错误有点特殊,因为默认情况下所有字段都相同。您可以在重复字段(或任何字段)的选项中覆盖它:

$builder->add('password', 'repeated', array(
    'type' => 'password',
    'invalid_message' => 'Please enter the same password twice',
));

顺便说一句,重复字段的根表单的错误冒泡是一个问题,已在 Symfony 2.1 中修复。

于 2012-07-28T06:10:10.773 回答