Я использую FOSuserbundle, чтобы начать с регистрацией пользователя https://github.com/FriendsOfSymfony/FOSUserBundleДоступ к вошедшему пользователю в шаблоне
Я получил его регистрацию/вход и выхода. Теперь я хочу захватить зарегистрированные данные пользователей и представить их на каждой странице моего сайта. Как «Привет имя пользователя» в заголовке типа вещи.
Похоже встраивание контроллер в моем приложение/Ресурсы/просмотров/base.html.twig это лучший способ сделать это http://symfony.com/doc/current/book/templating.html#embedding-controllers
Так что я написал мой контроллер для доступа к данным профиля пользователя. Я не могу понять, как получить доступ к методам FOS в моем встроенном контроллере. Так что с моей Acme/UserBundle/Controller/UserController.php Я хочу, чтобы это сделать:
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));
}
, который я взял из: поставщика/жгуты/FOS/UserBundle/Controller/ProfileController.php
спасибо. Я действительно изменил «ROLE» для «IS_AUTHENTICATED_REMEMBERED», и он отлично поработал. – ed209
Я не использую FOSuserbundle (если только он не появился), но 'app.user.username' все еще работал на меня. Может быть полезно кому-то узнать. –
Спасибо! Это должно быть намного яснее в документации. –