Ошибка Symfony 3.4 при получении данных сеанса - PullRequest
0 голосов
/ 20 декабря 2018

Я могу установить и получить данные сеанса в том же контроллере, как показано ниже:

$this->session->set('userid', $dbres [0]['user_id']);
$user_id = $this->get('session')->get('userid');

Это прекрасно работает.

Но если я использую

$user_id = $this->get('session')->get('userid');

Какую ошибку я здесь допустил?

В другом контроллере выдается эта ошибка: вызов функции-члена get () для null

Edit :

Please help me, I have the following classes 
class AssociationController extends FOSRestController {
            public $session;
            public function __construct(){
                /*** Set Session ***/
                $this->session = new Session();
            }

            /**
             * @Rest\Post("/session/get")
             */
            public function postTestSetSessionAction(Request $request) {
                    $this->session->set('userid', $dbres [0]['user_id']);
                    $Obj = new ComplaintsController();
                    $Obj->getSessionData();
            }

    }

class ComplaintsController extends FOSRestController {
            public function getSessionData() {
                $user_id = $this->get('session')->get('userid');
            }
    }

Когда я вызываю http://localhost/app_dev.php/session/get, Я получаю сообщение об ошибке «Вызов функции-члена get () on null»

1 Ответ

0 голосов
/ 20 декабря 2018

Какой контроллер расширяет ваши контроллеры?

Попробуйте получить сеанс из контейнера:

$this->container->get('session')->get('userid');

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...