Symfony2. Где находится класс Mailer? Собственно сабж. Нужно заижектить его в контроллере. Ноги растут отсюда https://toster.ru/q/172209?utm_source=email_toster... Прошу вашей помощи уважаемые знатоки!проблема решена. Необходимо было заинжектить контейнер при помощи сеттера, пример в ответах
В Symfony2 класс Mailer обычно находится в сервис-контейнере как сервис. Для заинжектинга Mailer в контроллер, нужно создать сеттер для Mailer в контроллере и пометить его аннотацией @required.
Пример:
use Symfony\Component\DependencyInjection\ContainerInterface; class YourController extends Controller { private $mailer; /** * @required */ public function setMailer(\Swift_Mailer $mailer) { $this->mailer = $mailer; } // ваши методы контроллера здесь }
После этого Symfony автоматически заинжектит Mailer в контроллер при вызове метода, помеченного аннотацией @required.
В Symfony2 класс Mailer обычно находится в сервис-контейнере как сервис. Для заинжектинга Mailer в контроллер, нужно создать сеттер для Mailer в контроллере и пометить его аннотацией @required.
Пример:
use Symfony\Component\DependencyInjection\ContainerInterface;class YourController extends Controller
{
private $mailer;
/**
* @required
*/
public function setMailer(\Swift_Mailer $mailer)
{
$this->mailer = $mailer;
}
// ваши методы контроллера здесь
}
После этого Symfony автоматически заинжектит Mailer в контроллер при вызове метода, помеченного аннотацией @required.