Установка с помощью Symfony не вызывает моего установщика, когда я использую класс из другого пакета - PullRequest
0 голосов
/ 27 ноября 2018

Я пытаюсь ввести переменную в установщик классов, но это не работает.Это моя конфигурация:

Company\CoreBundle\Services\InspectorManager\InspectorManager:
    public: true
    autowire: false

App\Helpers\GraphQl\Resolver\OrderResolver:
    autowire: false
    calls:
    - [setInspector, ['@core.inspector_manager']]

И класс

class OrderResolver
{
    protected $em;

    /**
     * @var InspectorManager $inspectorManager
     */
    protected $inspectorManager;

    public function __construct(EntityManager $em)
    {
        $this->em = $em;
    }

    /**
     * @var InspectorManager $inspectorManager
     * @required
     */
    public function setInspector(InspectorManager $inspectorManager)
    {
        $this->inspectorManager = $inspectorManager;
    }
}

setInspector никогда не вызывается.Класс InspectorManager происходит из другого пакета из другой версии Symfony (2.8) и объявляется так:

core.inspector_manager:
    class: Company\CoreBundle\Services\InspectorManager\InspectorManager
    arguments: ['@doctrine.orm.entity_manager']
    calls:
         - [setGeolocalisation, ['@core.geolocation_service']]

У вас есть идея, почему она не работает?Я провел слишком много времени в этом вопросе, и я не вижу способа решить его.Если я запускаю debug:autowiring, я получаю в нем InspectorManager.

Я уже изменил настройку автоматического подключения InspectorManager и OrderResolver на true, но это ничего не меняет.

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