Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Laravel 5.3 Notification Vs Mailable

I am a little confused about whether to use Laravel's Notification or Mailable class. From what I understand, Mailables are used to send only emails whereas Notifications can be used to send emails and sms. In my application, I dont have plans to send sms notifications for now, so I am confused if I should just use the Mailable class in this case. My questions are:

  1. If I am only going to be sending emails notifications, is it better for me to use Mailables instead of Notifications?

  2. If each emails have different html layout, then would Mailable be the better option?

  3. Even if all emails are Notification emails in nature, does it still make sense to send them using Mailables instead of Notifications?

Can someone tell me the main difference between these 2 and how should we decide on which method to choose when sending emails in Laravel 5.3.

like image 782
Neel Avatar asked Nov 18 '16 18:11

Neel


People also ask

What is the difference between mail and notification in Laravel?

From what I understand, Mailables are used to send only emails whereas Notifications can be used to send emails and sms.

What is Laravel mailable?

Laravel comes with a Mailable class that you can use to send emails effortlessly with. A good example of when to use the Mailable class is when the user registers. Upon registration completion, a welcome email is sent to the user.

What is notify () in Laravel?

Laravel Notify is a package that lets you add custom notifications to your project.


1 Answers

Although it is not in the documentation, as of Laravel 5.3.7, the Notifications mail channel can work with Mailable objects in addition to the notification MailMessage objects.

Therefore, you can create all your emails as Mailable objects, and if you decide to send them via Notifications, you would just have your toMail() method return the Mailable objects you've already made.

like image 112
patricus Avatar answered Sep 21 '22 00:09

patricus