我是Laravel的新手,我想在Laravel中开发电子邮件模块,但可以使用该应用程序。
说,电子商务网站它将在注册时发送邮件。订购商品等时,
我需要有关
的建议1.在DB中保存HTML邮件主体在创建邮件主体作为视图方面很好吗?2. Laravel功能可以通过应用程序来实现发送邮件模块的功能?
您应该创建邮件主体作为视图。将其保存到DB中并每次您需要发送电子邮件时都会拨打它是没有意义的。邮件主体是静态元素,它不会频繁改变。每次发送电子邮件时,唯一需要更新的内容是您使用该电子邮件附加的变量。Laravel通过Laravel Mail提供了此功能。因此,要在订购商品时发送电子邮件,例如,您需要首先收集该特定订单的数据。假设:
$data = [
'name' => $request->name,
'email' => $request->email,
'phone' => $request->phone,
'body_message' => $request->message,
'item' => $item
];
在此示例中,我正在从表格中收集日期。项目元素可以在购物或使用任何其他方法时存储在会话中。
重要:我在该数组中使用了索引" body_message"。您不能使用"消息"。我以前有这个问题,这是一个受保护的名称。
然后发送消息,只需调用邮件:: send()方法,类似的东西:
Mail::send(['html' => 'emails.your_view'],
$data
, function($message) use ($data)
{
$message->from('YourEmailAddress', 'YourCompanyName');
$message->to($data['email'], $data['name'])->subject('Your Order in YourCompanyName');
});
然后,在视图中,您可以使用此语法包含存储在该数组中的数据:
{!! $body_message !!}
您还需要查看我提供的有关Laravel邮件的链接。您需要安装额外的软件包,使用邮件驱动程序,配置config/mail.php文件,并可能将一些信息存储在.env文件中。
我希望这至少可以作为起点。