Есть ли простой способ получить текущий клиент на контроллере с помощью FOSOAuthServerBundle на Symfony?
У меня есть некоторые свойства моего клиентского объекта, и я хочу прочитать их в контроллере, но я не могу найти способ получить текущий клиент.
Я нашел способ получить только текущего пользователя ($this->container->get('security.context')->getToken()->getUser();
), но не текущего клиента.
РЕДАКТИРОВАТЬ: теперь я нашел способ получить клиента, но он не показывает мне значения свойств, которые я добавил в свой клиентский объект. Следующий код:
$token = $this->container->get('security.context')->getToken()->getToken();
$accessToken = $this->container->get('fos_oauth_server.access_token_manager.default')->findTokenBy(array('token' => $token));
$client = $accessToken->getClient();
\Doctrine\Common\Util\Debug::dump($client);
сбрасывает:
object(stdClass)[1180]
public '__CLASS__' => string 'CC\APIBundle\Entity\Client' (length=26)
public '__IS_PROXY__' => boolean true
public '__PROXY_INITIALIZED__' => boolean false
public 'id' => int 6
public 'name' => null
public 'city' => null
public 'randomId' => null
public 'secret' => null
public 'redirectUris' =>
array (size=0)
empty
public 'allowedGrantTypes' => null
Таким образом, имя и город, которые есть у моего клиента в БД, не отображаются... также я думаю, что есть много вызовов БД, которых можно было бы избежать очень элегантным способом...
Любые идеи?
$this->getUser();
- person NHG   schedule 07.02.2014