【发布时间】:2020-01-20 19:52:30
【问题描述】:
我想在我的网络应用程序中输入多个通知类型。我已经很好地将发生的特定事情通知用户;有用。我现在要做的是创建另一种通知类型。由于 Laravel 对所有通知使用相同的 notifications 表,就像我读过的 here 一样,我使用 php artisan make:notification 命令创建了另一个 Notification 类。设置后,触发后它也可以正常工作:它很好地记录在notifications 数据库表中,并在notifications type 列中提到了它的特定“类型”。现在目标用户应该能够收到这两个通知。
我的问题是如何设法将特定通知显示给用户。实现第一个通知类后,一切正常:用户收到他的通知。现在有两种通知类型,每当我尝试像我一样在刀片视图中显示带有@foreach(auth()->user()->notifications as $notification) 的所有通知时,我都会收到一个错误Undefined index: EtudiantsChoixTheme,其中EtudiantsChoixTheme 是我发送给用户的数据:
$EtudiantsChoixTheme = [
'id' => $idData,
...
'theme' => $themeData
];
\Notification::send($user, new StudentChoosedThemeNotification($EtudiantsChoixTheme));
StudentChoosedThemeNotification 是我实现的第一个通知类。仅当我想显示已收到(notifiable_id 字段中的用户 ID)两种通知类型的用户的通知时,才会发生此错误。我尝试了我读过的here:$user->notifications->filter(function($e) { $e->type == 'NewNotificationClass'}),但我收到了一个错误:syntax error, unexpected '}'...我也有tried用{{$notification->type}}显示通知类型,但这仅显示只收到一种通知的用户。当用户收到多个通知时,我似乎无法再显示这些通知。
在 Laravel 中,我可以多精确地为用户检索特定通知类型的通知数据?你们有没有人做过这样的事情?任何帮助将不胜感激
【问题讨论】:
标签: php laravel notifications