Symfony 2 загружает вспомогательный сервис по параметру config

1

Я пытаюсь загрузить службу в другую службу, используя параметр конфигурации, чтобы указать имя поставщика.

 <service id="test" class="MyClass"> 
      <argument type="service" id="%my.vendor%"></argument>
 </service>
 <service id="vendor.mytest" class="MyServiceClass"></service>

На данный момент я подтвердил, что параметр %my.vendor% является строкой "vendor.mytest", но это не рассматривается таким образом, он буквально читает строку %my.vendor% как "id" запрошенной оказание услуг.

Есть ли способ сделать это, правильно...

Благодарю!

Теги:
service

1 ответ

2
Лучший ответ

Вы можете использовать язык выражений (доступный из Symfony 2.4 :):

      <service id="test" class="MyClass"> 
        <argument type="expression">service(parameter('my.vendor'))</argument>
    </service>

надеюсь эта помощь

  • 0
    извините забыл пометить это как таковой, но это правильный ответ, большое спасибо @Matteo!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню