2016-07-20 18 views
0

コントローラに設定されている枝のセッション変数にアクセスしようとしています。何らかの理由で、それは小枝では機能しません。私は期待される結果を与えている別のコントローラでセッション変数の印刷をチェックしましたが、変数はテンプレートで空を示しています。私は構成上何かが欠落しているかどうかわかりません。symfony3のtwigでセッション変数を表示できません

//Below is my code in controller 

$session = $request->getSession(); 
$session->set('user', [ 
    'id' => $user->getId(), 
    'firstName' => $user->getfirstname() 
]); 

// code in twig 
{{ dump(app.session) }} 
+0

あなたは '$ session'変数をtwigに渡していますか? –

+0

いいえ、私は$セッション変数を小枝に渡していません。私はそのグローバルな構成を考えているので、明示的に$セッション配列を小枝に渡していません。私が間違っている? – user1965773

+0

ああ、愚かな私!もちろん、グローバル変数については正しいです。 –

答えて

1

いいえ、セッション変数がグローバルであるとは想定しないでください。

これを実行しました。あなたはTwigをレンダリングするときに配列経由で渡す必要があります。このような何か:

return $this->render('my_twig_file.html.twig', array(
     'user' => $session->get('user'), 
)); 

そして、小枝でそれをダンプ:

{{ dump(user) }} 

また、あなたがPROD環境でダンプを使用していないことを確認してください。テストが完了したらダンプをコメントアウトしたり、別のファイルを使用したりすることができます。

関連する問題