总结要点:消息通知系统

消息通知系统

  • 用于向用户发送消息提醒
  • 途径:
    • 数据库
    • 邮件
    • 短信
    • Slack

使用

准备数据库

  • 消息通知系统会在一张数据表中存储所有的通知消息

    • 包含通知类型,描述通知的其他信息
    # 创建表
    php artisan notifications:table
    
    # 数据库迁移
    php artisan migrate

创建通知类

  • Laravel 中,一种通知就是一个类,文件一般放在 app/Notifications
  • 可以通过 artisan 命令来创建

    php artisan make:notification ANotification
  • 在通知类的构造方法中,注入需要的模型
  • 每个通知类都会有 via 方法,用来指明通知的方式
  • 针对不同的通知类型,需要实现不同的方法 toXXX($notifiable)
    • 方法接收 $notifiabel 作为参数
    • 方法返回一个数组,该数组之后会转换成 JSON 数据存放在通知数据表的 data

如果 via 数据库进行通知,那么 toXXX 就是 toDatabase
如果 via 邮件进行通知,那么 toXXX 就是 toMail

触发通知

  • 调用 User 中的 notify 方法,并新建一个通知实例作为参数传入
  • 也可以通过重写 User 类的 notify 方法来实现更多的操作,但最后需要调用 Notifiable.notify 方法来发送通知
本帖已被设为精华帖!
本帖由系统于 5年前 自动加精
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 2

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!