我对是否使用Laravel的Notification或Mailable类感到有点困惑。根据我的理解,Mailables仅用于发送电子邮件,而通知可用于发送电子邮件和短信。在我的应用程序中,我暂时没有计划发送短信通知,所以如果我在这种情况下应该使用Mailable类,我很困惑。我的问题是:
如果我只是要发送电子邮件通知,是吗? 我更好地使用Mailables而不是Notifications?
如果每封电子邮件都有不同的html布局,那么Mailable会是 更好的选择?
即使所有电子邮件都是通知电子邮件,它仍然可以 使用Mailables而不是Notifications发送它们的感觉?
有人可以告诉我这两者之间的主要区别,以及我们应该如何决定在Laravel 5.3中发送电子邮件时选择哪种方法。
答案 0 :(得分:36)
虽然它不在文档中,但是从Laravel 5.3.7开始,除了通知mail
对象之外,通知Mailable
通道可以与MailMessage
个对象一起使用。
因此,您可以将所有电子邮件创建为Mailable
个对象,如果您决定通过通知发送它们,则只需使用toMail()
方法返回Mailable
个对象即可我已经做了。
答案 1 :(得分:8)
是的,确切地说,如果每个电子邮件布局不同,您应该使用Mailable
Mailable是发送电子邮件的新方式,比以前更容易。比通知更容易定制。
如果你想在不同的频道(Mail,SMS,Slack等)发送预定义的布局,通知是非常好的
您可以自定义通知布局,但通过通知进行布局会变得更加困难......这不是通知的用例