您知道如何在2个不同的“通过”通知之间传递数据吗? 这种情况: 我创建了2个自定义渠道进行通知
在我的通知类中,我有这个:
class GeneralNotification extends Notification
{
use Queueable;
private $notificationType;
private $sender;
public function __construct($notificationType, $sender)
{
$this->notificationType = $notificationType;
$this->sender = $sender;
}
public function via($notifiable)
{
return [CustomDatabaseChannel::class, PushNotificationChannel::class];
}
public function toPushNotification($notifiable)
{
return [
//
];
}
public function toCustomDatabase($notifiable)
{
return [
//
];
}
}
因此,这将首先执行toCustomDatabase
方法,然后执行toPushNotification
方法。
我想要的是将数据保存到数据库中之后,将其(插入的记录)传递给toPushNotification
方法。
我正在测试分配,例如:
public function toCustomDatabase($notifiable)
{
$this->notificationType = 'test';
return [
//
];
}
但是当我这样做时:
public function toPushNotification($notifiable)
{
dd($this->notificationType);
return [
//
];
}
它向我显示了原始的notificationType,而不是我在toCustomDatabase
方法中更改的值。
答案 0 :(得分:0)
我所做的是将插入的记录添加到de session()
中(尽管在API中间件中会话不是持久性的,但它在请求周期内有效)。然后,在toPushNoification
方法中,我返回该会话。