总结要点:消息通知系统

消息通知系统

  • 用于向用户发送消息提醒
  • 途径:
    • 数据库
    • 邮件
    • 短信
    • 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 方法来发送通知
本帖已被设为精华帖!
本帖由系统于 6年前 自动加精
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2

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