December 7, 2016 —John Koster
The make:notification
command is used to generate a new notification class. A name
must be supplied to the make:notification
command; this value will be the name of the newly generated class.
The following would generate a new notification class named StorageQuotaNotification
notification class:
1# Generate a new StorageQuotaNotification class.2php artisan make:notification StorageQuotaNotification
After the command has executed, a new file will be created at app/Notifications/StorageQuotaNotification.php
. The file will contain a new class named StorageQuotaNotification
. The following would be the generated class:
1<?php 2 3namespace App\Notifications; 4 5use Illuminate\Bus\Queueable; 6use Illuminate\Notifications\Notification; 7use Illuminate\Contracts\Queue\ShouldQueue; 8 9class StorageQuotaNotification extends Notification10{11 use Queueable;12 13 /**14 * Get the notification channels.15 *16 * @return array|string17 */18 public function via($notifiable)19 {20 return ['mail'];21 }22 23 /**24 * Get the notification message.25 *26 * @return \Illuminate\Notifications\MessageBuilder27 */28 public function message()29 {30 return $this->line('The introduction to the notification.')31 ->action('Notification Action', 'https://laravel.com')32 ->line('Thank you for using our application!');33 }34}
If the provided class name has already been taken by another notification class, the command will issue an error stating something similar to "Notification already exists!". Additionally, this command is capable of handling nested namespaces and directories; to take advantage of this, simply separate the namespace parts and class name with a directory separator:
1# Generate a new StorageQuotaNotification class in a nested directory2# with the namespace already set on the generated class.3php artisan make:notification Users/StorageQuotaNotification
∎
The following amazing people help support this site and my open source projects ♥️
If you're interesting in supporting my work and want to show up on this list, check out my GitHub Sponsors Profile.