柔晶美网络工作室

柔晶美网络工作室,倾心于web技术的博客站点

关注我 微信公众号

您现在的位置是: 首页 > 博客日记

laravel-admin前台view视图中判断是否已登录,是否为超级管理员

2019-11-10 admin laravel  1584

在laravel中,判断是户是否已登录的方法是:

use Illuminate\Support\Facades\Auth;
if (Auth::check()) {
    // 用户已经登录了...
}

获取用户信息可以使用:

// 获取当前通过认证的用户...
$user = Auth::user();
//  获取当前通过认证的用户 ID...
$id = Auth::id();

不过,在使用普遍的laravel-admin扩展中,却只提到获取用户信息的相关方法:

获取当前用户对象
Admin::user();
获取当前用户id
Admin::user()->id;
获取用户角色
Admin::user()->roles;
获取用户的权限
Admin::user()->permissions;
用户是否某个角色
Admin::user()->isRole('developer');
是否有某个权限
Admin::user()->can('create-post');
是否没有某个权限
Admin::user()->cannot('delete-post');
是否是超级管理员
Admin::user()->isAdministrator();
是否是其中的角色
Admin::user()->inRoles(['editor', 'developer']);

没有判断登台用户是否已登录的方法,经实践,可以用以下方法判断:

@if (Admin::user())
@if(Admin::user()->isAdministrator())
id }}/edit">编辑
@endif
@endif

通过先判断用户对象是否存在,再判断是否为超级管理员,两个步骤完成,这样就不会在没登录时报错了。

文章评论


需要 登录 才能发表评论
热门评论
0条评论

暂时没有评论!