【问题标题】:Laravel 5.8 Manual user approval?Laravel 5.8 手动用户批准?
【发布时间】:2019-08-09 02:09:34
【问题描述】:

我是 laravel 的新手,在问这个问题之前,我已经阅读了关于这个问题的各种其他主题,遗憾的是它们都没有帮助我。

我有 laravel 5.8 并使用我安装的身份验证:

php artisan make:auth

现在我读到我需要制作中间件或编辑登录控制器。但我想要的是用户被重定向到我已经说过他们需要等待被批准的自定义页面。

谁能指出我正确的方向并告诉我需要编辑哪些文件才能实现这一目标?

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

【问题讨论】:

    标签: laravel laravel-5 laravel-5.8


    【解决方案1】:

    在你的

    应用程序/Htpp/控制器/身份验证

    您将找到用户身份验证和注册的所有逻辑。在控制器内部,您会看到:

    /**
     * Where to redirect users after verification.
     *
     * @var string
     */
    protected $redirectTo = '/home';
    

    最后一行是您要查找的内容,它指向您的用户在相应操作后将被重定向到的视图/路线。

    此外,运行 make:auth 命令时生成的所有视图都将在

    资源/视图/授权

    如果您觉得需要修改它们。

    【讨论】:

      【解决方案2】:

      去这里。家庭控制器。在返回视图('home')下;把它改成

      if (Auth::user()->is_approved === "1"){
        return view('home');
      } else {
        return view('welcome');
      }
      

      “欢迎”您可以更改为您的自定义页面,“1”假定用户已获得批准。记得添加使用 Illuminate\Support\Facades\Auth;到该控制器的顶部。我有这个问题,并来阅读你的帖子。想放弃我所做的。它对我有用

      【讨论】:

        【解决方案3】:

        您需要建立一个用户批准系统。一种常见的方法是将用户表上的active 状态存储为布尔 MySQL 列。如果用户尝试登录,请检查该列。至于注册,您需要写入用户表,active 状态为 0 或 false。向管理员触发“嘿,您需要批准新用户”的通知也很棒。它可以通过 Laravel Nova 仪表板进行处理,理想情况下您只需单击一个按钮。

        它没有内置在 Laravel 框架中,但绝对是一个很好的用例!

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2017-12-09
          • 2021-07-06
          • 1970-01-01
          • 1970-01-01
          • 2021-01-16
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多