Symfony 3 и FOSUser 2.1: контроллер регистрации ошибок

Я использую FOSUserBundle на своем сайте Symfony (3.0.6). Недавно я обновил свои зависимости с помощью композитора, и теперь у меня есть FOSUserBundle версии 2.1.0.

Проблема: я переопределил контроллер регистрации (он работал хорошо), но теперь у меня появляется эта ошибка, когда я хочу получить доступ к своей странице регистрации:

Catchable Fatal Error: Argument 1 passed to FOS\UserBundle\Controller\RegistrationController::__construct() must implement interface Symfony\Component\EventDispatcher\EventDispatcherInterface, none given, called in D:\wamp64\www\mySite\var\cache\dev\classes.php on line 2457 and defined 500 Internal Server Error - ContextErrorException

В контроллере регистрации FOSUserBundle добавлены следующие строки:

class RegistrationController extends Controller
{
    private $eventDispatcher;
    private $formFactory;
    private $userManager;
    private $tokenStorage;

    public function __construct(
        EventDispatcherInterface $eventDispatcher,
        FactoryInterface $formFactory,
        UserManagerInterface $userManager,
        TokenStorageInterface $tokenStorage
    ) {
        $this->eventDispatcher = $eventDispatcher;
        $this->formFactory = $formFactory;
        $this->userManager = $userManager;
        $this->tokenStorage = $tokenStorage;
    }

    // ...
}

В предыдущей версии связки не было конструктора.

Есть ли у кого-нибудь идеи

Заранее спасибо.

Некоторое обсуждение здесь: stackoverflow.com/questions/50487275/… Лучше всего просто «заморозить» версию fos до той, которая работает.

Cerad 11.06.2018 17:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
0
1
312
1

Ответы 1

Взгляните на пользовательский журнал fos CHangelog (https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Changelog.md), они изменили способ перезаписи контроллера:

«Контроллеры и команды подверглись рефакторингу для использования DI. Проекты, расширяющие эти классы, должны будут адаптировать свой код (но лучше использовать поддерживаемые точки расширения, когда это возможно)».

Другие вопросы по теме