Ошибка службы Autowire после миграции на Symfony 3.4 - Как явно настроить значение? - PullRequest
0 голосов
/ 10 декабря 2018

Я мигрирую существующий проект Symfony 2.8 в Symfony 3.4.После добавления существующего AppBundle в новый сгенерированный Symfony 3.4 проект I появляется следующая ошибка:

Невозможно автоматически подключить службу "AppBundle \ Controller \ CustomExceptionController": аргумент "$ useDebugMode" метода "__construct () "является подсказкой типа" bool ", вы должны сконфигурировать ее значение явно

Я нашел несколько других вопросов по этой проблеме, но решение всегда указывает на отсутствующие параметры в файле service.yml.Однако, насколько я могу судить, здесь проблема не в этом:

// CustomExceptionController.php
namespace AppBundle\Controller;

use Symfony\Bundle\TwigBundle\Controller\ExceptionController;
...

class CustomExceptionController extends ExceptionController {   
    public function __construct(\Twig_Environment $twig, bool $useDebugMode, Translator $translator) {
        parent::__construct($twig, $useDebugMode);
        ...
    }

    ...
}


// services.yml
services:
    ...
    app.exception_controller:
        class: AppBundle\Controller\CustomExceptionController
        arguments: ['@twig', '%kernel.debug%', "@translator.default" ]

Я явно не устанавливал / не определял %kernel.debug% в app/config/config.yml, но я предполагаю, что в этом нет необходимости.Так ли это?

Таким образом, значение параметра $useDebugMode установлено явно в значение %kernel.debug%.Так как решить ошибку?

1 Ответ

0 голосов
/ 10 декабря 2018
// services.yml
services:
    ...
    app.exception_controller:
        class: AppBundle\Controller\CustomExceptionController
        arguments:
           $useDebugMode: '%kernel.debug%'

Укажите только $useDebugMode в списке аргументов, остальные два будут автоматически введены / автоматически подключены.

$useDebugMode должно быть таким же, как в конструкторе.

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