2017-01-11 7 views
0

Symfony FOSUserBundle Override Templatesに関する問題があります。Symfony FOSUserBundleオーバーライドテンプレートが機能しない

私は子供バンドルを作成し、thisドキュメントにテンプレート

方法をオーバーライド

を試してみました。

この方法でコントローラをオーバーライドできますが、それでもテンプレートを上書きすることはできません。私はそれについてgithub demoを見つけました、私たちはただ1つの違いがあります。

しかし、私のプロジェクトはFOSUserBundleコントローラのようです。

return $this->render('@FOSUser/Security/login.html.twig', $data); 

彼のプロジェクトでは、FOSUserBundleコントローラは次のように戻ってきました。

return $this->render('FOSUserBundle:Security:login.html.twig', $data); 

私が聞きたい:私は

-Whenは私のプロジェクトのためにFOSUserBundleをインストール..

を、私はそれを手動で変更してから、更新がこのバンドルのためにそこにある場合、それは戻ってそれを変更します-if彼のプロジェクトのようになりたいどうすればそれを達成できますか?

+0

ようこそスタックオーバーフロー!あなたは最初に[ツアー]を受け、良い質問をして[mcve]を作成することができます。そうすれば、私たちがあなたを助けやすくなります。 – Katie

答えて

1

ベンダーのコントローラを変更することはできません。 FOSUserBundleコントローラのコードを変更したい場合は、それを上書きする必要があります。どのバンドルがFOSUserBundleをオーバーライドするかは、そのバンドル内に独自のコントローラを作成することができます。その後、あなたは自分の戦略のためにそれを使うことができます。

サンプルバンドル:https://github.com/mertoksuz/symfony2-rest/tree/master/src/RestApi/UsersBundle

このUsersBundleをチェックしてください。

ありがとうございます。

+0

私はコントローラをオーバーライドすることができ、私は自分のリターンコードを書くことができますが、私はそれを望んでいません。あなたはgithubリポジトリを見れば、 "composer install"をダウンロードして実行してください。ベンダーファイルは私の望むようにダウンロードされます。異なっているパラメータや他のものがあります... 編集:あなたのsymfony-2チケットシステムレポをダウンロードし、コンポーザインストールを実行しました。ベンダーのFOSUserBundleコントローラも見てください。 return $ this-> render( 'FOSUserBundle:Security:login.html.twig'、$ data); なぜ私のコントローラが異なるのですか? –

+0

どのバージョンのFOSUserBundle?とにかくこれはあなたの問題です。 https://github.com/FriendsOfSymfony/FOSUserBundle/commit/dd1fa8fbb6df2d6037c136cc2b29a568f250069e –

+0

はい、symfonyのバグありがとうございました。 –

関連する問題