config ('administrator.permission')() 貌似多余?
通不过 config('administrator.permission')() ,才会被发送到permission-denied。
public function permissionDenied()
{
// 如果当前用户有权限访问后台,直接跳转访问
if (config('administrator.permission')()) {
return redirect(url(config('administrator.uri')), 302);
}
// 否则使用视图
return view('pages.permission_denied');
}
在permissionDenied()方法中再次调用config('administrator.permission')() ,判断了两次。
关于 LearnKu
因为在未登录的情况下 显示这个页面 提示登陆 登陆后自动回到这个页面 这时这部分代码判断通过就会自动跳转到管理后台页面去
从用户体验上看流程很自然
访问管理后台页面 A -> 跳转到无权限页面 -> 登陆 -> 跳转到管理后台页面 A,如果不加这个的话 用户登陆后就会留在这个无权限页面 体验很差我能想到的唯一会用到这个判断逻辑的场景是:已登录的管理员通过 地址栏输入 或者 alt+left 之类的操作访问了
permission-denied页面,如果不加if会错误地看到没有权限的提示。虽然觉得用处不大,但总归是有点用处吧。