Я пытаюсь внедрить некоторые виды веточек в качестве шаблонов для настраиваемой почтовой службы, которая будет использоваться в качестве зависимости другой службой.
Я не понимаю, почему, но Symfony не видит параметры, которые я пытаюсь ввести, в $ parameters.
Как правильно внедрить этот массив службв качестве параметра?
Вот часть services.yaml:
parameters:
locale: 'en'
template: '%fos_user.registration.confirmation.template%'
resetting: '%fos_user.resetting.email.template%'
from_email: 'somemail@mail.com'
confirmation: '%fos_user.registration.confirmation.from_email%'
resetting_password: '%fos_user.resetting.email.from_email%'
services:
user.mailer.rest:
class: App\Mailer\RestMailer
public: false
parent: fos_user.mailer.twig_swift
autoconfigure: false
autowire: true
arguments:
$parameters:
- '@template'
- '@resetting'
Конструктор службы RestMailer:
public function __construct(\Swift_Mailer $mailer, UrlGeneratorInterface $router, \Twig_Environment $twig, array $parameters)
{
$this->mailer = $mailer;
$this->router = $router;
$this->twig = $twig;
$this->parameters = $parameters;
}
public function sendConfirmationEmailMessage(UserInterface $user)
{
$template = $this->parameters['template']['confirmation'];
//...
Вот возвращаемая ошибка:
В строке DefinitionErrorExceptionPass.php 54:
Невозможно автоматически подключить службу «App \ Mailer \ RestMailer»: аргумент «$ parameters»> метода «__construct ()» является «массивом» с подсказкой типа,Вы должны настроить> его значение явно.