Kullanıcı kaydı https://github.com/FriendsOfSymfony/FOSUserBundle ile başlamak için FOSuserbundle kullanıyorum
Kayıt / giriş ve çıkış yapıyorum. Şimdi yapmak istediğim, giriş yapmış kullanıcı verilerini almak ve sitemin her sayfasında sunmak. Başlık türündeki "Merhaba kullanıcı adı" gibi.
Uygulamama / Resources / views / base.html.twig yerleştirmek , bunu yapmanın en iyi yolu gibi görünüyor http://symfony.com/doc/current/book/templating.html#embedding-controllers
Bu yüzden kullanıcı profili verilerine erişmek için denetleyicime yazdım. Anlayamadığım şey, gömülü denetleyicimdeki FOS yöntemlerine nasıl erişeceğim. Yani benim dan Acme / UserBundle / Kontrolör / UserController.php I bunu yapmak istiyor:
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));
}
Bunlardan kaptım: vendor / bundles / FOS / UserBundle / Controller / ProfileController.php