php - Laravel5.3如何通过公共的auth模块验证不同表中的用户
高洛峰
高洛峰 2017-04-11 10:19:48
0
3
276

目前只能认证users表里面的用户,我还想认证administrators表中的用户,但是不知道该怎么做了。
我在auth.php里面配置了一个system的guard,如果把他配置成默认的就可以认证,但是这样就没有办法认证users表了,请问有什么办法可以通过访问不同的登录表单然后使用公共的登录逻辑去认证不同表中的用户呢。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回覆(3)
小葫芦

自己找到解决方法了,过程如下
1.将系统的登录控制器文件复制到你需要单独认证的模块中,然后在里面添加方法

protected function guard()
{
    return Auth::guard('myguard');//myguard是我自己命名的,你可以修改为自己想要的名字
}

2.在config/auth.php中配置你自己的myguard,参照系统默认的配置添加一个就可以

3.为你的登录方法配置路由

Route::group(['prefix' => 'module', 'namespace' => 'Module'], function () {
    Route::get('login', 'LoginController@showLoginForm')->name('login');
    Route::post('login', 'LoginController@login');
});

4.在你需要认证的页面路由中使用[auth:myguard]方式进行认证。

5.做到这一步基本上就大功告成了,剩下的就是选择性的调整视图和跳转的页面了。

Ty80

我也刚做过这个功能,从5.2的时候开始有了这个功能

小葫芦

一分钟前刚回答了这个问题.. 可以参考下 https://segmentfault.com/q/10...

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!