Laravel - 通知控制器无法使用方法user()

时间:2018-04-14 16:18:45

标签: laravel authentication controller notifications

我正在尝试将通知系统添加到我的Laravel项目中。我'观看此视频以了解系统:https://www.youtube.com/watch?v=iDDUxqpNgSc

创建通知表,模型和控制器。另外,我用Vue.JS和Pusher创建了视图。它工作得很好!

但是,在通知控制器中,当我尝试使用Auth :: user()方法时,它返回null。我读到了某个地方,因为中间件' auth'控制器没有加载。

这是我的NotificationsController文件:

    <?php

namespace App\Http\Controllers;

use App\Notification;
use Illuminate\Http\Request;
use App\Idea;
use App\User;
use Illuminate\Support\Facades\Auth;

class NotificationsController extends Controller
{
    public function __construct()
    {
    }

    function get(){
        $notification = Auth::user()->unreadNotifications()->get();
        return $notification;
    }
    function read(Request $request){
        Auth::user()->unreadNotifications()->find($request->id)->markAsRead();
    }
}

你知道如何解决这个问题吗? 感谢你的时间!

1 个答案:

答案 0 :(得分:0)

答案不是关于Auth :: user(它可以访问)。我只是在我的模型中定义了notifiable_type。这是App \ Idea,它应该是App \ User