отправить письмо от модели и шаблона - PullRequest
2 голосов
/ 16 ноября 2011

если я хочу отправить письмо с SwiftMailer в Symfony, то я должен в действии:

$message = $this->getMailer()->compose(
      array('user@gmail.com' => 'user'),
      $affiliate->getEmail(),
      'Jobeet affiliate token',
      body
    );

    $this->getMailer()->send($message);

но это не работает в шаблоне и в модели (я хотел бы создать функцию для этого).

1 Ответ

2 голосов
/ 16 ноября 2011

Я бы не рекомендовал отправлять почту с помощью шаблона - поместите ссылку в шаблон и вызовите действие для отправки почты ... вы можете отправить с модели, хотя, опять же, я бы не рекомендовал использовать sfContext::getInstance() Внутри модели действительно плохая практика, поскольку она заставляет модельный класс полагаться на контекст. Итак, ваш модельный класс не может быть модульно протестирован, так как для его работы нужен контекст ...

Для этого вам нужен экземпляр текущего sfContext ... я бы предложил передать его в качестве параметра при создании модели

...