在电子邮件通知中,我们可以使用一些API来走笔邮件使用类似的问候方法(),线()等。我们可以在Mailable类中使用MailMessage API吗?
https://laravel.com/docs/5.4/notifications#mail-notifications
我们可以使用可邮寄类相同的API?
感谢
在电子邮件通知中,我们可以使用一些API来走笔邮件使用类似的问候方法(),线()等。我们可以在Mailable类中使用MailMessage API吗?
https://laravel.com/docs/5.4/notifications#mail-notifications
我们可以使用可邮寄类相同的API?
感谢
号的Mailable
类不实现同样的方法为MailMessage
类。
如果需要,您可以在通知之外使用MailMessage
类,但是您必须自己发送邮件对象。
$message = (new \Illuminate\Notifications\Messages\MailMessage())
->to(/* */)
->subject(/* */)
->line(/* */)
->action(/* */)
->line(/* */);
// most of this code is copied from \Illuminate\Notifications\Channels\MailChannel
Mail::send($message->view, $message->data(), function ($m) use ($message) {
if (!empty($message->from)) {
$m->from($message->from[0], isset($message->from[1]) ? $message->from[1] : null);
}
$m->to($message->to);
if ($message->cc) {
$m->cc($message->cc);
}
if (!empty($message->replyTo)) {
$m->replyTo($message->replyTo[0], isset($message->replyTo[1]) ? $message->replyTo[1] : null);
}
$m->subject($message->subject ?: 'Default Subject');
foreach ($message->attachments as $attachment) {
$m->attach($attachment['file'], $attachment['options']);
}
foreach ($message->rawAttachments as $attachment) {
$m->attachData($attachment['data'], $attachment['name'], $attachment['options']);
}
if (!is_null($message->priority)) {
$m->setPriority($message->priority);
}
});
注:这是未经测试,但我认为它应该工作。
有没有办法直接发送邮件而不使用mailable类? –
@ParthVora更新了我的答案。 – patricus
我想这只适用于你设置了消息的视图。使用默认减价模板时,它不能按预期工作。它引发了一个'InvalidArgumentException',其消息*无效视图。*用于'$ message-> view'参数。 –
这将是一个拉请求。 – ademin