2012-03-30 17 views
1

Symfony2にはRailsのbefore_filterと同等の機能がありますか?私はそれを見ているユーザーのタイプに基づいてアプリケーションのレイアウトを変更したい。どうもありがとう。Symfony2はbefore_filterに相当しますか?

編集:私は私の質問を明確にする必要があります。 URLパラメータに基づいてアプリケーションのレイアウトを変更したい。ですから、最終的には、before_filterに相当するのは、コントローラがレンダリングするすべてのテンプレートを、そのURLパラメータに基づいて別のベーステンプレートから継承させることです。テンプレートをレンダリングする50以上のコントローラアクションが既に存在しているので、すべてのコントローラアクションを編集することなく、アプリケーション全体を簡単に有効にすることが理想的です。

答えて

0

私はその機能を知らないが、あなたはあなたがhttp://symfony.com/doc/current/book/security.htmlでより多くの情報を見つけることができますコントローラ

に小枝テンプレート内{% if is_granted('ROLE_XXX') %}または$this->get('security.context')->isGranted('ROLE_ADMIN')を試すことができます。

これが役に立ちます。

0

同等のものは、kernel.viewイベントリスナーを作成することになります。レイアウトを即座に変更するには、LiipThemeBundleをご覧ください。

+0

"このイベントは、コントローラが応答オブジェクトを返さない場合にのみ呼び出されます。イベントの目的は、他の戻り値を応答に変換できるようにすることです。これが私が望むものなのかどうかは分かりません。私はテンプレートをResponseオブジェクトに変換したくないので、URLパラメータに基づいて別のベーステンプレートからレンダリングしたいだけです。 – user1045879

関連する問題