Ключ конфигурации не поддерживается для определения «параметров» - PullRequest
0 голосов
/ 18 сентября 2018

Я использую компонент Symfony DI.Я пытаюсь передать строковый параметр в конструктор службы следующим образом:

services:
   parameters:
        config.directory: './../../../'
   _defaults:
        public: true
   settings:
        class: Bar\Foo\Service
        arguments: ['%config.directory%']

Я компилирую контейнер:

$containerBuilder = new ContainerBuilder();
$loader = new YamlFileLoader($containerBuilder, new FileLocator($dir));
$loader->load('services.yaml');
$containerBuilder->compile();

Исключение:

Неустранимая ошибка: Uncaught Symfony \ Component \ DependencyInjection \ Exception \ InvalidArgumentException: ключ конфигурации "config.directory" не поддерживается для определения "параметры"

1 Ответ

0 голосов
/ 18 сентября 2018

Параметры должны быть на том же уровне, что и услуги:

parameters:
    config.directory: './../../../'
services:
  _defaults:
       public: true
  settings:
       class: Bar\Foo\Service
       arguments: ['%config.directory%']
...