Php 如何让middlware控制Laravel 7项目中没有id的无人进入页面

Php 如何让middlware控制Laravel 7项目中没有id的无人进入页面,php,laravel,authentication,middleware,Php,Laravel,Authentication,Middleware,我有LMS项目,有3个角色:管理员、教师、学生 我不能让中间件控制任何人访问管理员、教师或学生,除了 这是一个Laravel 7项目。因此,您可能希望确保每个人都经过了正确的身份验证和登录 在路由文件中,您应该运行所有路由,其中只有经过身份验证的用户才可以通过auth middlware进行访问 路由::组['middleware'=>['auth']],函数{ 路线::获取“/home”,'HomeController@index“->命名为‘家’; //更多路线 }; 要指定用户应重定向到的

我有LMS项目,有3个角色:管理员、教师、学生 我不能让中间件控制任何人访问管理员、教师或学生,除了


这是一个Laravel 7项目。

因此,您可能希望确保每个人都经过了正确的身份验证和登录

在路由文件中,您应该运行所有路由,其中只有经过身份验证的用户才可以通过auth middlware进行访问

路由::组['middleware'=>['auth']],函数{ 路线::获取“/home”,'HomeController@index“->命名为‘家’; //更多路线 }; 要指定用户应重定向到的位置,可以在打开中间件并检查方法

受保护的函数重定向到$request
假设用户表中有角色列

中间件代码应为:

public function handle($request, Closure $next)
    {
        if (Auth::user()-> role === 'ADMIN') {
            return $next($request);
        } else {
            return back();
        }
    }
希望这将是有用的&不要忘记阅读同样的Laravel文档,这将提高您的技能


同样,您也可以为其他角色创建中间件。

我希望从中创建中间件zero@MazenKhalid您可以在“请分享更多详细信息”中阅读关于编写自己的中间件的内容-您想实现什么,为什么不能实现它?@peter谢谢您