我正在尝试从Laravel创建用户系统,并且我计划给某些用户提供“ BETA测试员”角色,以便他们可以访问网站的beta版。
但是,我不确定这是否可能以及我将如何去做。
我正在寻找的计划类型是“网站的Beta版导航>大型登录[如果已经登录则跳过]>检查用户是否具有“ BETA测试员”角色>如果是,请将其发送给测试版网站/如果不告诉他们他们没有访问权限,则
这可能吗?
答案 0 :(得分:0)
创建一个自定义的中间件类来检查用户的角色:
<?php
namespace App\Http\Middleware;
use Closure;
class Checkrole
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
// hasRole being a function defined on your User model that checks
// a user's assigned role(s).
if (auth()->check() && auth()->user()->hasRole('BETA Tester')) {
return $next($request);
}
abort(401, 'You are not allowed to access this page');
}
}