如何解决Laravel通过不同的方法发送相同的通知
我正在尝试通过不同的通知方法->notify()
来吸引同一类型的不同用户。
例如:我有TicketCompleted
通知,它的via()
方法包含:return ['mail','database'];
。我还同时实现了方法toArray()
和toMail()
。所以我想做的是以下事情:
具有角色Client
的模型Accountant
仅应通过toArray()
方法通知;
具有角色Client
的模型Contact
仅应通过toEmail()
方法通知;
如何实现?
解决方法
您可以在via()
中返回不同的值:
public function via($notifiable)
{
if ($notifiable->role === 'Accountant') {
return ['database'];
} else if ($notifiable->role === 'Contact') {
return ['mail'];
}
// default for all other clients
return [];
}
如果对其他模型使用相同的通知,则还必须检查$notifiable
的类。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。