2017-10-18 8 views
0

に私は私のカスタムオーセンティケータとしてガードを使用しています警備​​隊オーセンティケータ内twigswiftmailer呼び出して、私はそれをレンダリングするために小枝があるamoung引数を持つ注入し、サービスfos_user.mailerを使用して、オーセンティケータ内の電子メールを送信する必要があります私が持っている問題は、 "サーキュラーリファレンスがサービスのために検出されました..."というエラーが出るということです。私のオーセンティケータが再び認証チェッカー(私のオーセンティケータ)を呼び出す小枝を呼び出すメーラーを呼び出したと言います。 これにはどんな解決策がありますかsymfonyの2

答えて

0

迅速かつ厄介な回避策は、オーセンティケータにコンテナを注入し、必要なときにメーラーサービスを受けることです。それはあなたの依存関係を隠しているので、汚いです。

しかし、なぜあなたのオーセンティケータで電子メールを送信する必要がありますか? symfonyの認証関連イベントの1つを代わりに使用できますか? (AuthenticationEventsおよびSecurityEventsクラスを参照してください)。これで十分でない場合は、独自のイベントを作成し、それを別のサービスで聴くこともできます。それはそのメールの送信を担当します。