我创建了管理员登录信息,但无法登录。 我已经在数据库中执行了管理表,管理员的守卫和我在控制器和我的模型上设置了所有内容,但我无法登录。
这是我的控制器
{
"data": [
{
"id": 1,
"email_address": test@gmail.com,
"authenticated": true,
"type": sso,
"timestamp": 436543678572,
"last_login": 436543678572,
"session_expires": 436543678572
},
],
}
答案 0 :(得分:1)
首先在User表中添加列角色 然后你需要使用命令
制作中间件php artisan make:中间件管理员
这会在app / Http / Middleware目录中创建一个名为Admin.php的文件,该文件看起来像
<?php namespace App\Http\Middleware;
use Closure;
use Auth;
class Admin {
public function handle($request, Closure $next)
{
if ( Auth::check() && Auth::user()->role==='admin')
{
return $next($request);
}
return redirect('home');
}
}
然后,您需要将管理中间件添加到您的app / Http / Kernel.php文件
protected $routeMiddleware = [
//
'admin' => 'App\Http\Middleware\Admin', // this line right here
];
将管理中间件添加到路由中。 (在routes.php文件中)。
Route::get('/admin,function(){
//statement
})->middleware('auth','admin');