我在使用Symfony2和SwiftMailer发送邮件时遇到了问题,而且我不太清楚如何调试此问题。以下是代码。首先,我创建一个要显示的表单。提交后(request-> method == post),我尝试发送电子邮件。我没有收到任何错误消息,并且被带到了感谢页面,但是我没有收到任何电子邮件。我已在生产环境和开发环境中进行了测试。在开发环境中,我在提交后打开了Profiler,它显示0封电子邮件。任何帮助都将不胜感激!谢谢!
public function contactAction(Request $request)
{
$defaultData = array('name' => 'Name', 'email' => 'Email', 'subject' => 'Subject', 'message' => 'Message');
$form = $this->createFormBuilder($defaultData)
->add('name', 'text')
->add('email', 'email')
->add('subject', 'text')
->add('message', 'textarea')
->getForm();
if($request->getMethod() == 'POST') {
$form->bindRequest($request);
$data = $form->getData();
$message = \Swift_Message::newInstance()
->setSubject($data['subject'])
->setFrom('no-reply@mysite.com')
->setTo('email@mysite.com')
->setBody($this->renderView('AdaptiveSiteBundle:Default:email.txt.twig', array('name' => $data['name'], 'message' => $data['message'])))
;
$this->get('mailer')->send($message);
return $this->redirect($this->generateUrl('thankyou'));
}
return array("form" => $form->createView());
}