Symfony在每次刷新时将变量传递给模板

时间:2012-11-04 05:01:16

标签: php variables layout doctrine symfony-1.4

我知道这里有一些关于使用partials或slots将变量传递给模板的线程。我的问题是,如何定义该变量,以便无论您在哪个页面上,该变量仍然可以访问。我知道每个操作都“扩展”sfActions但是有没有办法访问它并为整个网站设置一个动作?

修改

每个用户在sfUser表中都有一个字段,我希望在每个页面的顶部显示该字段。这是我想要使用的代码,但我不知道放在哪里或者如何将它传递给模板页面上的部分。

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

1 个答案:

答案 0 :(得分:1)

在每个模板中,您都可以使用$sf_user访问您的用户信息。它返回一个myUser对象。

如果您已安装sfGuard,则此类应扩展sfGuardSecurityUser。在此类中,您可以使用->getGuardUser()方法检索sfGuardUser对象。

因此,要在任何模板中检索此信息,您可以执行以下操作:

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