У меня есть служба, определенная в services.yaml
, которая имеет запись calls
, так как я не хочу указывать свои зависимости в ее конструкторе, поэтому я использую сеттеры.
Теперь я пытаюсь указатьsecurity.firewalls.main.guard.authenticators.0
запись конфигурации к нему, но если я попытаюсь сослаться на него так: '@App\Service\Authentication\Guard'
Я получу Служба "security.authentication.provider.guard.main" зависит от несуществующей службы "@App \ Service \ Authentication \ Guard ".
Если я укажу только имя класса в соответствии с документами Symfony: App\Service\Authentication\Guard
, то исключения не будет, и защита работает, однако раздел calls
моего определения полностью игнорируется, и поэтому мои сеттеры не работают.
Мое лучшее предположение: модуль безопасности использует свой собственный локатор службы, который каким-то образом отключен, и игнорирует определения в services.yaml
, вероятно, поэтомувы не найдете примеров записи конфигурации, в которой используются простые имена служб, а не канонические имена классов.