laravel - Laravel6 - 多登录平台上的电子邮件验证定制
问题描述
我是 laravel 的新手。我正在尝试在我的 laravel6 项目中实现电子邮件验证。
在我的项目中,有三种用户类型,分别名为“用户”、“供应商”和“管理员”。我为“控制器”中的每个用户类型准备了单独的目录,并且每个用户都有自己的身份验证文件(例如,目录“App/Http/Controllers/Vendor/Auth”有自己的 VerificationController.php 等)。到目前为止,我已经成功地在我的数据库中使用单独的表为每种类型实现了注册和登录/注销功能。
当我尝试实施电子邮件验证时,出现了一个问题。当我尝试访问需要电子邮件验证的页面时,无论用户类型如何,似乎都会调用“Auth\VerificationController@show”方法。
我浏览了 laravel 源代码,了解到在这个过程中,路由器调用了 Illuminate/Routing/Router->emailVerification() 方法。无论用户类型如何,emailVerification() 方法都会路由到“Auth\VerificationController@show”。我想做的是根据用户类型进行路由(例如,如果“供应商”尝试登录,我想调用“供应商\Auth\VerificationController@show”)。
我不知道该怎么做。任何人都可以给我任何建议吗?
照亮\路由\路由器类
public function emailVerification()
{
$this->get('email/verify', 'Auth\VerificationController@show')->name('verification.notice');
$this->get('email/verify/{id}/{hash}', 'Auth\VerificationController@verify')->name('verification.verify');
$this->post('email/resend', 'Auth\VerificationController@resend')->name('verification.resend');
}
先感谢您。
解决方案
推荐阅读
- java - 在 from.as 中的发送邮件中添加标题,如“堆栈溢出
" - google-apps-script - 复制粘贴保持原始格式 | 用于 GSheets 的 Google Apps 脚本
- html - Bootstrap 4:我希望我的列占据容器的整个宽度
- python - 什么是 Vaex 函数将字符串解析为 datetime64,相当于 pandas to_datetime,允许自定义格式?
- javascript - 有没有办法订阅 window.getSelection 中的更改?
- javascript - 根据键数组更改数据集对象的形状
- windows - xcopy 在 AppVeyor 中失败,在家工作:参数数量无效
- php - 是否可以将 *= 运算符与 round() 函数一起使用
- mysql - MySQL访问字符串就像一个数组
- git - 忽略 gitlab-ci 管道中的 Dockerfile