Пользователь symfony / skeleton вошел в систему. Пользователь сохраняется в сеансе, но недоступен в getUser (). - PullRequest
0 голосов
/ 20 февраля 2019

Я установил простое приложение symfony/skeleton, которое содержит сущность пользователя и аутентификацию.Когда после успешной аутентификации я вызываю маршрут, который содержит следующий код:

public function index(Security $security)
{
   $username = $security->getUser()->getUsername();

Это приводит к ошибке:

Call to a member function getUsername() on null

Таким образом, очевидно, что компонент безопасности теперь не относится к текущему журналув пользователя.Сессия, однако, содержит текущий UsernamePasswordToken (я проверил, используя dump).

Тот же код отлично работает, когда я использую website-skeleton.Чего не хватает в скелете?

Мой брандмауэр настроен так:

firewalls:
    dev:
        pattern: ^/(_(profiler|wdt)|css|images|js)/
        security: false
    main:
        anonymous: true
        logout:
            path: ^/user/logout
        json_login:
            check_path: /user/login

1 Ответ

0 голосов
/ 20 февраля 2019

Вы можете получить аутентифицированного пользователя от контроллера, который расширяет AbstractController, просто используя $this->getUser();.

...