Laravel 5.8手动用户批准?

时间:2019-03-18 16:28:39

标签: laravel-5.8

我是laravel的新手,在问这个问题之前,我读过关于这个问题的其他主题,可惜他们没有一个帮助我。

我有laravel 5.8并使用我安装的auth:

php artisan make:auth

现在我读到我需要制作中间件或编辑logincontroller。但是我想要的是将用户重定向到我已经做出的自定义页面,该页面要求他们等待批准。

有人可以指出正确的方向,告诉我需要编辑哪些文件吗?

我已经在名为is_approved的数据库中创建了一个BIT列,该列自动设置为0。

3 个答案:

答案 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框架中,但绝对是一个好用例!