我是laravel的新手,在问这个问题之前,我读过关于这个问题的其他主题,可惜他们没有一个帮助我。
我有laravel 5.8并使用我安装的auth:
php artisan make:auth
现在我读到我需要制作中间件或编辑logincontroller。但是我想要的是将用户重定向到我已经做出的自定义页面,该页面要求他们等待批准。
有人可以指出正确的方向,告诉我需要编辑哪些文件吗?
我已经在名为is_approved的数据库中创建了一个BIT列,该列自动设置为0。
答案 0 :(得分:1)
去这里。 HomeController。在返回视图下(“ home”);将其更改为
if (Auth::user()->is_approved === "1"){
return view('home');
} else {
return view('welcome');
}
在“欢迎”位置,您可以更改到自定义页面,“ 1”表示用户已被批准。记住要添加使用Illuminate \ Support \ Facades \ Auth;到该控制器的顶部。我遇到了这个问题,开始阅读您的文章。想放弃我的所作所为。它对我有用
答案 1 :(得分:0)
在您的
App / Htpp / Controllers / Auth
您将找到用户身份验证和注册的所有逻辑。在控制器内部,您将看到:
/**
* Where to redirect users after verification.
*
* @var string
*/
protected $redirectTo = '/home';
最后一行是您要查找的内容,它指向在执行相应操作后将用户重定向到的视图/路线。
此外,当您运行make:auth命令时,所有生成的视图都将位于
资源/视图/身份验证
如果您需要修改它们。
答案 2 :(得分:0)
您需要构建用户批准系统。一种常见的方法是将active
状态作为布尔MySQL列存储在users表上。然后,如果用户尝试登录,请检查该列。对于注册,您需要以active
状态为0或false写入用户表。最好向管理员发送通知,通知您“嘿,您需要批准一个新用户”。可以通过Laravel Nova仪表板进行处理,理想情况下,您只需单击一个按钮即可。
它不是内置在Laravel框架中,但绝对是一个好用例!