1
我正在尝试在Laravel 5.3中创建一个中间件,用于检查用户是否为管理员,以便我可以将一些路由限制为仅限管理员。在Laravel 5.3中使用中间件
我中间件:
<?php
namespace App\Http\Middleware;
use Closure;
class IsAdmin
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if(!\Auth::user()->hasRole('admin')) {
return redirect('login');
}
return $next($request);
}
}
我注册它的籽粒,添加Ti保护,如下面:
protected $routeMiddleware = [
....
'isadmin' => App\Http\Middleware\IsAdmin::class,
]
然后我试图以确保我的路线:
Route::resource('user', 'UserController')->middleware('isadmin');
但我从我的路线文件中得到错误:
FatalThrowableError in web.php line 103:
Call to a member function middleware() on null