Я використовую FOSuserbundle, щоб розпочати реєстрацію користувачів https://github.com/FriendsOfSymfony/FOSUserBundle
У мене це є реєстрація / вхід та вихід. Що я хочу зробити зараз, це захопити дані про зареєстрованих користувачів і представити їх на кожній сторінці мого сайту. Як "Привіт ім'я користувача" у заголовку типу речі.
Здається, що вбудовування контролера в моє додаток / Resources / views / 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));
}
який я схопив: vendor / bundles / FOS / UserBundle / Controller / ProfileController.php