Laravel 5无法从自定义帮助程序访问当前登录的用户ID

时间:2018-05-28 12:52:05

标签: laravel laravel-5

在AppServiceProvider中,我从自定义助手调用了一个函数,如下所示:

public function boot()
    {
        View::share('tree', customhelper::generateSiteTree(0));
    }

自定义帮助文件正在调用数据库函数,如下所示:

$children = UserPermission::getLeftNavByUserId($startAt); 

在自定义帮助器功能中,我想传递当前登录的用户ID,但dd(Auth::user())正在返回null

如何使用方法

传递Auth::user()->id
getLeftNavByUserId($startAt, Auth::user()->id);

2 个答案:

答案 0 :(得分:1)

自定义助手函数将在Auth中间件之前在应用程序实例中初始化,因此如果你想使用auth用户从middlware绑定它,那么它将始终为null。

答案 1 :(得分:1)

变量(或Facade)尚不可用。解决此问题的一种方法是使用视图编辑器。

.post-body a[href$='.jpg'], .post-body a[href$='.png'], .post-body a[href$='.gif'] {
    pointer-events: none;
}

当然,您需要添加一个检查用户是否登录等。