@1alexandr

Symfony2. Где находится класс Mailer?

Собственно сабж. Нужно заижектить его в контроллере. Ноги растут отсюда https://toster.ru/q/172209?utm_source=email_toster...
Прошу вашей помощи уважаемые знатоки!

проблема решена. Необходимо было заинжектить контейнер при помощи сеттера, пример в ответах
  • Вопрос задан
  • 2397 просмотров
Пригласить эксперта
Ответы на вопрос 2
RussellKvashnin
@RussellKvashnin
WEB-developer
Вам все прекрасно рассказали в предыдущем трэде.
Если не понятно - постараюсь подытожить.
Инжектить в контроллер сервис mailer не нужно, т.к. контроллер в симфони реализует ContainerAwareInterface, и доступ к сервису можно получить с помощью метода get().
Если же ваш контроллер по каким-либо причинам не наследуется от стандартного контроллера симфони - вы должны реализовать ContainerAwareInterface.
Если же вы наследуете стандартный контроллер симфони, и делаете свой контроллер сервисом вы должны заинжектить контейнер при помощи сеттера.
Пример конфигурации:
my.controller.service:
        class: MyCompany\MyBundle\Controller\MyController
        calls:
            - [setContainer, ["@service_container"]]
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Сервис mailer. Инджектите его. Если такого сервиса нет - то беда. Находится этот сервис в symfony/SwiftmailerBundle
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы