2015-04-21 2 views
0

Я новый разработчик Symfony2, я использую fos UserBundle для управления пользователями и аутентификации. мне нужно получить вошедший пользователь где-то в моем приложении (в другом Bundle, а не в том, в желании я реализованный в FOS UserBUndle) я нашел в документации, что я должен использовать эту услугу:FOS UserBundle и получение пользователя

$this->get('security.token_storage')->getToken()->getUser(); 

но кажется, что «security.token_storage» не был распознан. Я пропустил некоторые заявления об использовании?

+1

Какую версию Symfony вы используете? '@ security.token_storage' был введен только в версии 2.6. – qooplmao

+0

Я использую 2.6.6 –

ответ

0

я нашел решение: я использовал эту манипуляцию в службы, или этого не должно быть. , поэтому я перемещаю его на контроллер, а затем он работает

0

Как я сделать это с помощью «security.context» услугу, как это:

$user = $this->container->get('security.context')->getToken()->getUser(); 

Или еще проще:

$user = $this->getUser(); 
+0

Да, это устарело, поскольку symfony 2.6 –

+0

Оба они устарели? –

+0

Только первый вариант. Служба security.context устарела. Вместо этого используйте security.token_bag, если вам нужно получить токен. – pcm

Смежные вопросы