我想在用户表中放置一个用户类型字段,而当用户注册时,默认用户是默认用户,并转到用户页面。当我在字段中将其更改为admin时,登录后将转到admin页面我被困了几天。请帮我找到解决方案控制器和中间件内部的代码
// web.php
Route::group(['middleware'=>['auth','admin']], function () {
Route::get('/admin', 'frontsController@admin')->name('admin');
});
// Middleware
public function handle($request, Closure $next)
{
if (Auth()->user()->usertype != 'admin' ){
return $next($request);
} else {
return redirect ('home');
}
}
// Kernel.php
'admin' => \App\Http\Middleware\MyMiddleware::class
// LoginController
public function redirectTo()
{
if ( Auth::user()->usertype == 'admin') {
return 'admin';
}else{
return 'user';
}
}
如果应该自动重定向此重定向
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->check()) {
// if authenticated as admin redirect to admin board
if (auth()->user()->type == 'admin') {
return redirect()->route('admin.dashboard');
}
// else redirect to home dashboard
return redirect('/');
}
return $next($request);
}