Symfony セキュリティ システムを使用するログイン フォームがあります。
たとえば、無効な資格情報を入力した場合に Symfony が「Bad Credentials」を返すなど、エラー メッセージをカスタマイズしたいと思います。そのメッセージを「無効な電子メール/パスワード」などにカスタマイズするにはどうすればよいですか?
Symfony セキュリティ システムを使用するログイン フォームがあります。
たとえば、無効な資格情報を入力した場合に Symfony が「Bad Credentials」を返すなど、エラー メッセージをカスタマイズしたいと思います。そのメッセージを「無効な電子メール/パスワード」などにカスタマイズするにはどうすればよいですか?
これについては、これについてのみ、これは検証エラーではなく、コントローラーに不適切に送信された例外メッセージです...
よく覚えていれば、messages.yml
ファイルでオーバーライドできます(必要に応じて .yml または .xliff 拡張子を付けます):
"Bad credentials": "Invalid email/password"
これは本当に醜いですが、ログインエラーでこれを達成する唯一の方法です。「提示されたパスワードを空にすることはできません」または「提示されたパスワードが無効です」に対する同じ修正...
そして、Twig テンプレートでは、translator を適用する必要があります。
{% if error %}
<p class="error">{{ error.message|trans }}</p>
{% endif %}
FOSUserBundleを使用していますか?その場合、すべてのメッセージは翻訳ファイルに保存されます。
FOSUserBundle \ Resources\translationsからFOSUserBundleをオーバーライドするUserBundleに翻訳ファイルをコピーします。
symfonyは、自分が何をしているのかを知っている限り、高度にカスタマイズ可能です。