Symfony Custom错误消息

时间:2013-01-14 19:41:47

标签: php symfony error-handling

我有一个使用Symfony安全系统的登录表单。

我现在想要自定义错误消息,例如,如果输入无效凭据,Symfony将返回“Bad Credentials”。如何将该消息自定义为“无效的电子邮件/密码”?

2 个答案:

答案 0 :(得分:1)

对于这个,并且只针对这个,这不是验证错误,而是一个错误发送到控制器的异常消息......

如果我记得,你可以在messages.yml文件中覆盖它(根据需要扩展名为.yml或.xliff):

"Bad credentials": "Invalid email/password"

这真的很丑,但这是实现登录错误的唯一方法。 “提供的密码不能为空”或“提供的密码无效”的相同修复程序......

而且,在Twig模板中,您必须应用翻译器:

{% if error %}
    <p class="error">{{ error.message|trans }}</p>
{% endif %}

答案 1 :(得分:-1)

您使用的是FOSUserBundle吗?如果是,则所有消息都存储在翻译文件中。

将翻译文件从FOSUserBundle \ Resources \ translations复制到覆盖FOSUserBundle的UserBundle。

只要您知道自己在做什么,Symfony就可以高度自定义。