Как использовать сессию в Symfony

Мне трудно понять, как работает сессия Symfony.
И не смог найти ответ, который я ищу здесь, на S.O. или другие внешние источники.

[НАСТРОЙКА]

Symfony 3SiteEntity (Храните информацию о сайте, такую ​​как URL сайта, имя сайта и т. Д.)Структура сайта состоит из макета страницы (layout.html.twig)

[ЭТА ПРОБЛЕМА]

Довольно легко понять, я просто не могу понять, где начать сеанс. На данный момент я создал это действие вSiteController

public function sessionAction(Request $request) {
    $em=$this->getDoctrine()->getManager();
    $site=$em->getRepository('SiteBundle:Site')->findOneBy(array('url'=>$request->getSchemeAndHttpHost()));
    if($site) {
        $session=new Session();
        $session->set('id',$site->getId());
        $session->set('url',$site->getUrl());
        $session->set('name',$site->getName());
    } else {
        [...]
    }
}

Как я могу вызвать эту функцию при загрузке сайта, чтобы создать сеанс?

Кроме того, это правильный способ сделать это?

Ответы на вопрос(2)

Ваш ответ на вопрос