根据其角色验证电子邮件后,如何重定向到step2页面?

时间:2019-04-14 11:46:14

标签: laravel laravel-5.8

根据电子邮件的角色验证电子邮件后,如何重定向到step2页面?

enter image description here

由于我有两种用户类型,分别是在注册他们的电子邮件并通过后,他们会收到一封验证电子邮件,在该单击按钮之后,它重定向到首页,而转到/signup/employee/step2/signup/user/step2

我可以问一些有关如何根据用户的角色以及他们的步骤2重定向用户以完成注册的提示吗?

2 个答案:

答案 0 :(得分:0)

很显然,您将需要某种类型的ACL(访问控制)。如果您的应用仅需要该特定部分,则可以在用户表is_employee中添加新列并将其设为bool。

之后,只需实施一个新的中间件。

但是,我个人会选择https://github.com/spatie/laravel-permission,这很容易:)

答案 1 :(得分:0)

Laravel在用户验证其帐户时公开一个事件,您可以向其添加自定义侦听器并将用户重定向到所需的位置。

您需要执行以下操作:

// app/Providers/EventServiceProvider.php
protected $listen = [
    'Illuminate\Auth\Events\Verified' => [ // Laravel event
        'App\Listeners\RedirectUsers', // Your custom listener
    ],
];

运行# php artisan make:listener RedirectUsers -e Illuminate\Auth\Events\Verified

// app/Listeners/RedirectUsers.php
public function handle(OrderShipped $event)
{
     if(Auth::user()->hasRole('admin')) {
         return redirect('/admin');
     }
     // ...
}