如何解决Laravel发送自定义电子邮件
我不知道这是否可能
我正在尝试从我的用户表中向所有用户发送自定义电子邮件。我正在使用laravel中存在的邮件外观。
有一个类似这样的刀片模板:
@component('mail::message')
# New Book Lunch
This is the body of the email.
@component('mail::button',['url' => $url ?? ''])
View Order
@endcomponent
Thanks,<br>
{{ config('app.name') }}
@endcomponent
class NewsLetterController extends Controller
{
public function newsletter(Request $request)
{
$subject = $request->name;
$message = $request->message;
$email = User::pluck('email');
Mail::to($email)->(Add my custom $message and $subject)->send(new NewsLetter());
}
}
在这里,我想添加自定义消息并以填写表单为主题。该怎么做才能添加自定义消息?
解决方法
查看文档:{{3}}
您可以通过构造函数将变量传递给Mailable。
Mail::to($request->user())->send(new NewsLetter($subject,$message));
在Mailable中:
class NewsLetter extends Mailable
{
// ...
public function __construct(string $subject,string $message)
{
$this->subject = $subject;
$this->message = $message;
}
}
如果要将消息传递给视图,则您的build
可能如下所示:
class NewsLetter extends Mailable
{
// ...
public function build()
{
return $this->view('emails.newsletter')
->with([
'message' => $this->message,]);
}
}
最后,将消息添加到刀片中:
<p>{{ $message }}</p>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。