estoy usando FOSuserbundle para empezar con el registro del usuario https://github.com/FriendsOfSymfony/FOSUserBundleAcceso al usuario que ha entrado en una plantilla
Tengo que registrarse/entrar y salir. Lo que quiero hacer ahora es tomar los datos de los usuarios registrados y presentarlos en cada página de mi sitio. Me gusta "Hola, nombre de usuario" en el tipo de encabezado de cosa.
Parece que la incorporación de un controlador en mi app/Resources/views/base.html.twig es la mejor manera de hacer esto http://symfony.com/doc/current/book/templating.html#embedding-controllers
así que escribí mi controlador para acceder a los datos del perfil de usuario. Lo que no puedo entender es cómo acceder a los métodos FOS en mi controlador integrado. Así que desde mi Acme/UserBundle/Controlador/UserController.php quiero hacer esto:
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));
}
la que me agarró de: vendedor/paquetes/FOS/UserBundle/Controlador/ProfileController.php
gracias. De hecho, cambié "ROLE" para "IS_AUTHENTICATED_REMEMBERED" y funcionó muy bien. – ed209
No estoy usando FOSuserbundle (a menos que ahora lo incluya) pero 'app.user.username' aún me funcionó. Puede ser útil para que alguien lo sepa. –
Gracias! Esto debería ser mucho más claro en la documentación. –