拉拉维尔$user>通知返回空



我正在尝试获取用户的通知。但是当我的通知控制器中的方法 get(( 启动时,它总是返回 null。这是我用来调试此功能的实际代码:

 function get(){
    $user = AppUser::find(12);
    dd($user->notifications);
}

路线是用POST方法的,我用邮递员来测试它。我总是收到带有空内容的错误 500。你知道为什么吗?提前感谢

[编辑]这是 dd($user( 对于带有 POST 请求的 get(( 方法的结果:

{ 
"id": 13, 
"rang": 1, 
"image": "https://www.drupal.org/files/profile_default.jpg", 
"firstname": "Donald", 
"lastname": "Torp", 
"email": "ashlynn.mcclure@pacocha.com", 
"created_at": null, 
"updated_at": null 
}

这实际上是我的数据库通知表的内容:

ID : e7f54269-a5ff-4109-9b8a-c2328fb6cf98   
Type : AppNotificationsIdeaSelected   
notifiable_type : AppIdea  
notifiable_id : 13  
data : {"idea":{"id":39,"name":"okeefe","description":"Sunt soluta et eum. Vitae sint adipisci et excepturi eos est exercitationem velit. Mollitia hic aut aperiam cum incidunt dolorem sed. Ut blanditiis eos temporibus hic illum quis.","image":"https://lorempixel.com/400/280/?98265","user":13,"created_at":null,"updated_at":null}}     
read_at :   
created_at : 2018-04-14 00:57:37

return (dd($user->load('notifications')));的结果:

#relations: array:1 [
    "notifications" => DatabaseNotificationCollection {#549
      #items: []
    }
  ]  

如果我将notifiable_type从应用\想法更改为应用\用户,则结果:

[
    {
        "id": "e7f54269-a5ff-4109-9b8a-c2328fb6cf98",
        "type": "User::class",
        "notifiable_type": "App\User",
        "notifiable_id": 13,
        "data": {
            "idea": {
                "id": 39,
                "name": "okeefe",
                "description": "Sunt soluta et eum. Vitae sint adipisci et excepturi eos est exercitationem velit. Mollitia hic aut aperiam cum incidunt dolorem sed. Ut blanditiis eos temporibus hic illum quis.",
                "image": "https://lorempixel.com/400/280/?98265",
                "user": 13,
                "created_at": null,
                "updated_at": null
            }
        },
        "read_at": null,
        "created_at": "2018-04-14 00:57:37",
        "updated_at": "2018-04-14 00:57:37"
    }
]

啊,我看到你分配了错误的notifiable_type,它应该说用户::类

定义可通知模型时,请考虑要发送通知的内容

一旦将通知存储在数据库中,您应该能够获取通知。

请在此处查看文档 https://laravel.com/docs/5.6/notifications#database-notifications

最新更新