Maison >développement back-end >tutoriel php >Notifications à Laravel

Notifications à Laravel

Christopher Nolan
Christopher Nolanoriginal
2025-03-04 09:22:10252parcourir

Notifications in Laravel

Dans cet article, nous allons explorer le système de notification dans le Laravel Web Framework. Le système de notification de Laravel vous permet d'envoyer des notifications aux utilisateurs sur différents canaux. Aujourd'hui, nous discuterons de la façon dont vous pouvez envoyer des notifications sur le canal de messagerie.

Bases des notifications

Pendant le développement des applications, vous devez souvent informer les utilisateurs des différents changements d'état. Il pourrait être d'envoyer des notifications par e-mail lorsque l'état de la commande est modifié ou d'envoyer un SMS sur leur activité de connexion à des fins de sécurité. En particulier, nous parlons de messages qui sont courts et fournissent simplement un aperçu des changements d'état.

Laravel fournit déjà une fonctionnalité intégrée qui nous aide à réaliser quelque chose de similaire - des notifications. En fait, cela fait de l'envoi de messages de notification aux utilisateurs un jeu d'enfant et une expérience amusante!

La beauté de cette approche est qu'elle vous permet de choisir parmi différentes canaux, des notifications seront envoyées. Passons rapidement par les différents canaux de notification pris en charge par Laravel.

  • Mail: Les notifications seront envoyées sous forme de courrier électronique aux utilisateurs.
  • SMS: Comme le nom l'indique, les utilisateurs recevront des notifications SMS sur leur téléphone. être envoyé sur les canaux Slack.
  • Base de données: Cette option vous permet de stocker des notifications dans une base de données si vous souhaitez créer une interface utilisateur personnalisée pour l'afficher.
  • Parmi les différents canaux de notification, nous utiliserons le message Modèle
Pour commencer, pour créer le message

Tableau dans le tableau dans le tableau dans le tableau dans le tableau dans le tableau, pour commencer, pour créer les messages dans le table base de données.

qui devrait créer la classe de notification NewMessage

$php artisan migrate<br>

Étant donné que chaque notification dans Laravel est représentée par une classe distincte, nous devons créer une classe de notification personnalisée qui sera utilisée pour informer les utilisateurs. Utilisons la commande Artisan suivante pour créer une chaîne de notification personnalisée: courrier pour envoyer des notifications aux utilisateurs, le canal Mail pour envoyer des notifications.

En fin, vous devez vous assurer que vous implémentez les méthodes nécessaires en fonction du type de canal configuré dans la canal de base de données , quelles stores dans une base de données, vous n'avez pas besoin de configurer la chaîne de base

FACADE.

Si la classe du modèle d'entité utilise le trait illuminatenotifications Nofiable , vous pouvez alors appeler la méthode notify

sur ce modèle. La classe appuseur <p> implémente le trait <code> notifiable <code>IlluminateNotificationsNotifiable, et il devient donc l'entité notifiable. D'un autre côté, vous pouvez également utiliser la façade illumine upportfacadesNotification <code>notify pour envoyer des notifications aux utilisateurs. AppUser Notifiable passons par la méthode index <code>IlluminateSupportFacadesNotification du contrôleur.

Dans notre cas, nous allons informer les utilisateurs lorsqu'ils reçoivent un nouveau message. Nous avons donc essayé d'imiter ce comportement dans la méthode index en premier lieu.

Ensuite, nous avons informé l'utilisateur du destinataire d'un nouveau message en utilisant la méthode notify sur l'objet $toUser, car c'est le NOFICIABLE entité.

$php artisan migrate<br>

Vous avez peut-être fait que nous passons également l'objet $fromUser. Vous souhaitez inclure le nom d'utilisateur __construct de dans un message.

En revanche, si vous voulez l'imiter en utilisant la façade

, il est assez facile de le faire en utilisant l'extrait suivant. Notification

$toUser->notify(new NewMessage($fromUser));<br>
Comme vous pouvez le voir, nous avons utilisé la

de la méthode de la notification pour envoyer une notification pour un utilisateur. Url send https: // your-laravel-site-domain / notify / index

dans votre navigateur. Si vous n'êtes pas encore connecté, vous serez redirigé vers l'écran de connexion. Une fois que vous êtes connecté, vous devez recevoir un e-mail de notification à l'adresse e-mail qui est jointe avec l'utilisateur

. Vous vous demandez peut-être comment le système de notification détecte l'adresse 1 lorsque nous ne l'avons pas encore configuré nulle part. Dans ce cas, le système de notification essaie de trouver la propriété

dans l'objet notifiable. Et la classe d'objets

a déjà cette propriété car nous utilisons le système d'authentification Laravel par défaut. to email Cependant, si vous souhaitez remplacer ce comportement et que vous souhaitez utiliser une propriété différente autre que le courrier électronique, il vous suffit de définir la méthode suivante dans votre classe de notification. Adresse. AppUser

Et c'est comment utiliser le système de notification dans Laravel. Cela nous amène également à la fin de cet article!

Conclusion
Notification::send($toUser, new NewMessage($fromUser));<br>

Ce que nous avons vécu aujourd'hui est l'une des fonctionnalités les plus utiles mais les moins discutées de Laravel - des notifications. Il vous permet d'envoyer des notifications aux utilisateurs sur différents canaux. email_address email Après une introduction rapide, nous avons implémenté un exemple du monde réel qui a démontré comment envoyer des notifications sur le canal de messagerie. En fait, il est vraiment pratique dans le cas de l'envoi de messages courts sur les changements d'état dans votre application. to

Pour ceux d'entre vous qui commencent simplement avec Laravel ou cherchent à étendre vos connaissances, votre site ou votre application avec des extensions, nous avons une variété de choses que vous pouvez étudier sur le marché Envato.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn