php symfony session request fosuserbundle

php - cómo obtener el valor de la sesión dentro de symfony2 yo uso fosuserbundle



session request (1)

Estoy usando fosuserbundle y esta es mi función dentro de la clase FOSUBUserProvider:

public function connect(UserInterface $user, UserResponseInterface $response) { // and here i want to get session value like: $session = $request->getSession(); $session->get(''value1''); // }


necesita insertar Session en su declaración de servicios,

y luego agréguelo en el constructor de la clase FOSUserProvider ,

en la sección services.yml and services add @session

parameters: my_user_provider.class: Auth/UserBundle/Security/Core/User/FOSUBUserProvider services: my_user_provider: class: "%my_user_provider.class%" #this is the place where the properties are passed to the UserProvider class arguments: [@fos_user.user_manager,{facebook: facebookID},@session,@doctrine.orm.entity_manager]

declare $session y $ em variable en su clase sobre la función connect y agregue el siguiente constructor,

public function __construct(UserManager $userManager, Array $properties, Session $session, EntityManager $em) { $this->session=$session; $this->em=$em; parent::__construct($userManager, $properties); }

en la función Connect puedes obtenerlo como,

public function connect(UserInterface $user, UserResponseInterface $response) { $value=$this->session->get(''value1''); $em=$this->em; // or directly use $this->em->flush(); or whatever you want . . . }