2017-09-11 8 views
0

私はカート内のアイテムの数を返す関数を持っています。ウェブサイトの各ページにこの番号を表示する方法はありますか?私はこれは私が使用したいとdの関数であるsymfonyの関数からの結果を小枝テンプレートでグローバルに返します

...サイトのすべてのページにロードされている小枝ファイルでその値を表示する必要があります。

public function getCartCount(){ 

    $session = new Session(); 

    $session_user = $session->get('temp_session_user'); 

    $em = $this->doctrine->getManager(); 

    $details = $em->getRepository('AppBundle:RechargeLogs')->findBy(array(

     'sessionVal'=> $session_user, 

     'status'=> 0 

)); 

答えて

3

ソリューションがたくさんあります https://symfony.com/doc/current/templating/twig_extension.html

はあなたが小枝にコントローラを埋め込むことができます: http://symfony.com/doc/current/templating/embedding_controllers.html

01このため、

あなたは小枝フィルタを作成することができます

セッションで変数を格納し、小枝でそれにアクセスすることができます。 https://symfony.com/doc/current/templating/app_variable.html

あなたもサービスを作成し、小枝のグローバル変数として登録し、それを使用することができます:https://symfony.com/doc/current/templating/global_variables.html#referencing-services

+0

はあなたの非常にinforvativeいただきありがとうございます回答!私の質問は、変数なしで1番目のオプションを使用できるかどうかです。使用したい関数で質問を編集しました。 –

+1

@DimitriosMarkopoulosまあ、twig関数として作成し、twigテンプレートで関数を呼び出すことができます。あなたはそれを必要とするか、それをセッションに保存して、それを小枝でアクセスします。なぜ変数を使用したくないのですか?ページを変更するたびにその値を照会する必要があります。なぜなら、セッションに保存してすべてのページに表示するだけではないからです。 – kunicmarko20

+0

セッション変数の方がはるかに優れています –

関連する問題