【问题标题】:Symfony 3 - SwiftMail - renderView for the bodySymfony 3 - SwiftMail - 正文的渲染视图
【发布时间】:2019-04-08 12:39:09
【问题描述】:

我想在 symfony 3.4 上使用 swiftmail 发送 n 封邮件 我会使用 -> setBody ($ this-> renderView ("....") 作为邮件的内容。

只是,我有两个问题。首先是我使用swiftMail的函数是静态函数,所以你必须使用self::而不是$this->,但是self::renderView不起作用。

另一方面,我不明白我应该把我的链接指向什么形式,我在互联网上找到了所有东西,我不知道该拿哪一个

目前,我已经:

$transport = \Swift_SmtpTransport::newInstance();

        // Create the Mailer using your created Transport
        $mailer = new \Swift_Mailer($transport);

        $message = \Swift_Message::newInstance()
                        ->setSubject($subject)
                        ->setFrom(array($mailFrom => 'aliasTest'))
                        ->setTo($emailAdress)
                        ->setCharset('utf-8')
                        ->setContentType('text/html')
                        ->setBody("hello"); // ->setBody(self::renderView(" ???")

        $mailer->send($message);

【问题讨论】:

    标签: function symfony email static


    【解决方案1】:

    我会选择以下两种方式之一:

    • 在控制器中使函数非静态/可能将其提取到服务中
    • 将主体或渲染器作为参数提供给函数。

    如果将其从 /a 控制器中删除,则可以使用 twig 环境 (\Twig_Environment $twig) ($twig->render('templatename', $paramarray))。

    (免责声明:\Twig_Environment 的调用方式可能不同/在您的 twig 版本中具有适当的命名空间;o))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多