缺乏我的 symfony 知识成为了我的瓶颈。我在网上搜索但尚未找到完全解决方案,所以我在这里。我认为如何传递$parameters给sendmail function渲染 $data 不起作用,但它可以看到但调用它 ajax(使用 ajax 不会导致错误但渲染)我猜它不起作用。
**
* some route settings
**
function index(){
...
$parameters = array(
'feedtitle' => $feedback->getTitle(),
'feedtype' => $feedback->getFeedtype(),
'feeddesc' => $feedback->getDescription(),
'feedpublish' => $feedback->getPublishedAt(),
'feedauthor' => $user->getFirstName() . ' ' . $user->getLastName(),
);
$this->sendEmail($parameters, $mailer, "info@fastap.com", 'proclaim@gmail.com');
}
function sendmail($data, $mailer, $from, $to){
...
$message = (new \Swift_Message('Хэрэглэгчдийн санал'))
->setFrom($from)
->setTo($to)
->setBody(
$this->renderView(
// templates/emails/issue.html.twig
'email/issue.html.twig',
['data' => $data] <-- not working
),
'text/html'
)
...
}
这是 issue.html.twig
<table style="width:100%; border-collapse:collapse;font-family: sans-serif; text-align: left;">
<thead>
<tr style="font-size:14px;">
<th style="border:1px solid #3d3d3d">Name</th>
<th style="border:1px solid #3d3d3d">Caption</th>
<th style="border:1px solid #3d3d3d">Type</th>
<th style="border:1px solid #3d3d3d">Description</th>
<th style="border:1px solid #3d3d3d">Date</th>
</tr>
</thead>
<tbody>
<tr style="font-size:12px;">
<td style="border:1px solid #3d3d3d">{{ data.feedauthor }}</td>
<td style="border:1px solid #3d3d3d">{{ data.feedtitle }}</td>
<td style="border:1px solid #3d3d3d">{{ data.feedtype }}</td>
<td style="border:1px solid #3d3d3d">{{ data.feeddesc }}</td>
<td style="border:1px solid #3d3d3d">{{ data.feedpublish }}</td>
</tr>
</tbody>
</table>