【发布时间】:2015-09-22 10:43:06
【问题描述】:
我已经用
初始化了我的超薄应用程序 $app = new Slim([
'view' => new Twig(),
'templates.path' => INC_ROOT . '/app/views'
]);
$transport = Swift_MailTransport::newInstance();
$mailer = Swift_Mailer::newInstance($transport);
我的路线我有这个代码
$app->get('/test-email', function() use ($app, $mailer){
// Here I'm fetching my email template from my template directory.
$welcomeEmail = $app->view('emails/test_email.twig');
// Setting all needed info and passing in my email template.
$message = Swift_Message::newInstance('Wonderful Subject')
->setFrom(array('email@seznam.cz' => 'Me'))
->setTo(array('email2@seznam.cz' => 'You'))
->setBody($welcomeEmail)
->setContentType("text/html");
$results = $mailer->send($message);
// Print the results, 1 = message sent!
print($results);
});
代码正确地将电子邮件发送到地址 results=1,但来自树枝模板的正文回显到屏幕而不是作为电子邮件发送。我想使用树枝模板来生成发送电子邮件的正文。
【问题讨论】:
-
我将代码更改为
$welcomeEmail = app->view()->render('emails/test_email.twig');,它似乎从树枝模板发送带有正文的电子邮件 -
如果此评论解决了您的问题,请创建一个答案并将其标记为已接受。
-
我创建了答案,但 Blackwood 删除了它
-
你能为此在 Meta 上创建一个问题吗?问它有什么问题。
-
顺便说一句,为什么我必须使用
$app->view()->render而不使用$app->render?
标签: email twig slim swiftmailer