【发布时间】:2017-05-29 09:01:37
【问题描述】:
给定100 关注者,一旦我完成了一个待办事项,就会触发一个通知。问题是80 他们只需要电子邮件通知,另一个20 只需要短信通知。这是否意味着我需要像这样使用 2 个不同的通知调用:
Notification::send($emailOnlyUsers, new TodoCompletedEmail($todo));
只有邮件通道,然后:
Notification::send($smsOnlyUsers, new TodoCompletedSms($todo));
哪个只有短信频道?或者是否可以在 TodoCompleted Notification 文件中包含 $emailOnlyUsers 和 $smsOnlyUsers 的逻辑,其中两个通道一起列出以在一个文件中处理不同用户的不同通道?像这样的:
$user->notify(new TodoCompletedEmail($todo));
我问是因为我宁愿在一个具有不同频道的文件中执行此操作,但我认为我不能,因为 Laravel 的 Notification 需要传递的用户集合(在这种情况下实际上有 2 个用户集合),但更多的渠道/不同的集合是可能的,并且必须为每个频道/用户集合创建一个新的通知文件以获取相同的TodoCompleted 通知。有人可以阐明是否可以将它放在一个文件中,如果可以,如何?
【问题讨论】:
标签: php laravel laravel-5 laravel-5.3