symfony3を学び始めています。私は解決できない問題に直面しています。symfony 3 menuセッションを依頼する
私のbase.html.twig
ファイルにはnav
のメニューがあり、それは$_SESSION
という変数で変更されます。
たとえば、ユーザーが接続されている場合はpath/to/myProfile
にリダイレクトするリンクを作成するとします。ページのコンテンツが何であってもユーザーがいない場合はpath/to/connection
になります。
私は{% block menu %}
を追加することができ、それへisConnected
変数を渡すと、いくつかのif/else
は、リンクのURLやテキストを変更するために行いますが、すべてのページが同じメニューを持っているはずなので、私はに同じコードを追加する必要があるだろう私が作るすべてのコントローラー。
コントローラを呼び出す前に親テンプレートを変更するにはどうすればよいですか?フラットPHPで
は、私は私のindex.phpでこれを使用し、それが本当にうまく動作します:
<?php
$profil_link = isset($_SESSION["login"])?'<a href="profil">Profil</a>':'<a href="connexion">Connexion</a>';
$twig->addGlobal("profil_link", $profil_link);
私はSOのポスト(Dynamic menu with symfony in template)を見ましたが、答えでリンクが死んでいると私は見つけることができません枝に関する何かが関数{% render %}
(私はそれがsymfony2関数であったと思います)。それは私の問題に関連していますか?
EDITは:あなたは小枝を使用している場合、PHPでこれを行う必要はありません...
ないあなたが何をしたいのかの確認のような小枝が接続されている場合は、単純に確認することができます。編集してよりよく説明できますか? –
私はそれをもっと明確にする方法はわかりませんが、試してみましょう。 –
@ t-n-yはそれが良いですか? –