2012-11-04 35 views
1

我知道這裏有一些關於使用partials或slots將變量傳遞給模板的線程。我的問題是,如何定義該變量,以便無論您在哪個頁面上,該變量仍可訪問。我知道每個動作「擴展」sfActions,但是有沒有辦法訪問它併爲整個網站設置一個動作?Symfony將變量傳遞給每次刷新時的模板

編輯:

每個用戶都有在,我會在每個頁面的頂部顯示喜歡的sfUser表中的字段。這裏是我想要使用的代碼,但是我不確定在哪裏放置或如何將它傳遞給模板頁面上的部分。

$this->user = $this->getUser()->getGuardUser(); 
$this->activeitems = $this->user->getActiveItems(); 
+2

你需要什麼樣的變化呢?它來自哪裏,取決於什麼? – 1ed

+1

並告訴我們你想要在你的項目中做什麼。 – j0k

+0

我已更新我的問題,更詳細。 – djcloud23

回答

1

在每個模板中,您都可以使用$sf_user訪問您的用戶信息。它返回一個myUser對象。

如果您安裝了sfGuard,則此類應延伸sfGuardSecurityUser。並且在這個類中,您可以使用->getGuardUser()方法檢索sfGuardUser對象。

所以檢索內部的任何模板這個信息,你可以這樣做:

$activeitems = $sf_user->getGuardUser()->getActiveItems(); 
+0

我可以通過執行'<?php $ activeitems = $ sf_user-> getGuardUser() - > getActiveItems()來做到這一點嗎? ?>'? – djcloud23

+0

@ djcloud23是的,當然,我告訴你*在任何模板* :) – j0k

+1

輝煌!再次感謝J0k。 :) – djcloud23

相關問題