我正在使用 FOSUserBundle 来注册用户。不过,这些错误出现在一个奇怪的地方。
它们出现在密码字段行中,而不是用户名或电子邮件
如您所见,错误显示在密码旁边,而不是用户名或电子邮件旁边。HTML 显示错误在密码行中,而不仅仅是在用户名行的底部。
为什么是这样?
我已经使用fields.html.twig
并添加了这个;
{% block form_row %}
{% spaceless %}
<div class="form-group">
{{ form_errors(form) }}
{{ form_label(form) }}
{{ form_widget(form) }}
</div>
{% endspaceless %}
{% endblock form_row %}
这可行,但错误都出现在密码form-group
div 中。
视图文件如下所示Resources/views/Registration/register_content.html.twig
<form role="form" action="{{ path('fos_user_registration_register') }}" {{ form_enctype(form) }} method="POST" class="form-horizontal fos_user_registration_register">
{{ form_widget(form) }}
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<input type="submit" class="btn btn-info" value="{{ 'registration.submit'|trans }}" />
</div>
</div>
</form>
如何将它们移动到各自的 div 或将它们移动到表单的开头?
我也有这个validation.yml 文件,可能值得注意
FOS\UserBundle\Model\User:
constraints:
- Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: {fields: username, message: "This username is taken" }
- Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: {fields: email, message: "This email is taken" }