在laravel5.2以后你在控制器的构造方法内都无法获取用户信息,所以就没有办法处理用户相关业务。
解决方法使用中间键来处理:
1》在app/Http/kernel.php内添加中间键
protected $routeMiddleware = [ .... 'checkAdminUser' => \App\Http\Middleware\AdminUserCheck::class,//定义的中间键 ]
2》在app/Http/Middleware内添加AdminUserCheck.php
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Auth;
class AdminUserCheck
{
public function handle($request, Closure $next)
{
$group = Auth::user()
dd($group )//这个就能得到用户信息
//在这里你可以处理你的业务
return $next($request);
}
}3》在控制器内引入
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
class AdminBaseController extends Controller
{
public static $adminCache = 120;
public static $adminPage = 10;
/**
* 引入
*/
public function __construct()
{
$this->middleware('checkAdminUser');
}
}
本文由:xiaoshu168 作者:xiaoshu发表,转载请注明来源!