我想在管理表上创建多重身份验证,
我已经创建了一个管理表,
Schema::create('admins', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->string('job_title');
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
job_title可能类似于SuperAdmin和Admin。 我想应用中间件来限制两个管理员的角色。 为此,我创建了AdminMiddleware和SuperAdminMiddleware。 但是我对AdminMiddleware感到困惑,如何获取管理员数据。
AdminMiddleware.php
public function handle($request, Closure $next)
{
if ($request->admin() && $request->admin()->type != 'Admin')
{
return view('unauthorized')->with('role','Admin');
}
return $next($request);
}
我遇到此错误
方法管理员不存在
对于用户,我们可以这样做
public function handle($request, Closure $next)
{
if ($request->user() && $request->user()->type != 'admin')
{
return view('unauthorized')->with('role','Admin');
}
return $next($request);
}
但是在管理表/模型的情况下,我们该怎么办?