首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >访问模板中已登录的用户

访问模板中已登录的用户
EN

Stack Overflow用户
提问于 2011-09-19 02:52:52
回答 3查看 111.1K关注 0票数 97

我正在使用FOSuserbundle开始使用用户注册https://github.com/FriendsOfSymfony/FOSUserBundle

我让它注册/登录和注销。我现在要做的是抓取登录的用户数据,并将其显示在我网站的每个页面上。比如"Hi username“在事物的头类型中。

似乎在我的app/Resources/views/base.html.twig中嵌入一个控制器是实现这一点的最好方法,http://symfony.com/doc/current/book/templating.html#embedding-controllers

所以我编写了我的控制器来访问用户配置文件数据。我不明白的是如何在我的嵌入式控制器中访问FOS方法。因此,在我的Acme/UserBundle/Controller/UserController.php中,我想这样做:

代码语言:javascript
复制
public function showAction()
{
    $user = $this->container->get('security.context')->getToken()->getUser();
    if (!is_object($user) || !$user instanceof UserInterface) {
        throw new AccessDeniedException(
               'This user does not have access to this section.');
    }

    return $this->container->get('templating')
      ->renderResponse('FOSUserBundle:Profile:show.html.'.$this->container
      ->getParameter('fos_user.template.engine'), array('user' => $user));
}

我从vendor/bundles/FOS/UserBundle/Controller/ProfileController.php上抓取的:

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7463650

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档