2012-01-14 13 views
0

たとえば、「Bad credentials」メッセージを別の言語で表示する必要があります。 は、これまでのところ、私はそれは私が別の言語でこのメッセージを表示するための推奨方法だろうかと思っています
throw new BadCredentialsException('Bad credentials', 0, $notFound);symfony2で認証エラーを翻訳するのに推奨される方法

として
\vendor\symfony\src\Symfony\Component\Security\Core\Authentication\Provider\UserAuthenticationProvider.php
authenticate機能に例外としてスローされることがわかりました。この場所の文字列を変更するだけで最適ではないようです... 認証中におそらく表示される可能性のある他のメッセージもあります。

私はJMSSecurityExtraBundleFOSUserBundleを使用していますが、これを処理するための組み込み機能がいくつかあると思います...?

答えて

4
  1. オーバーライドログインテンプレート:アプリ/リソース/ビュー/セキュリティ/ login.html.twigにFOSUserBundle /リソース/ビュー/セキュリティ/ login.html.twigdocvideoを参照)

    をコピーします(doc参照)
  2. login.html.twigでトランスフィルタエラーに変数を追加:

    {{エラー|トランス}}ファイルのsrc/YourBundlePath /リソース/翻訳/メッセージを翻訳で

  3. {ロケールは}追加.yml:

    悪い資格情報:あなたのエラーテキスト

+0

グレートを。 、ありがとう。私はこれを有効にするためにdevキャッシュをクリアする必要がありました。 – Priednis

関連する問題