如果自己的用户表结构和laravel自带的auth的用户表结构不一样,怎么进行用户验证?
PHP中文网
PHP中文网 2017-05-16 16:50:30
0
1
747

我的用户表结构和laravel框架中的用户验证创建的表结构不一样,比如laravel中的默认是通email登录的,而我的用户表压根就没有email字段,这个还可以通过laravel的auth这个东西来实现用户验证码?

是不是如果表结构和laravel中的不一样就不能用它自带的auth来验证了呢?

PHP中文网
PHP中文网

认证0级讲师

全部回复(1)
淡淡烟草味

包括验证所使用的user表(Models/User.php)的table,

验证所读取的用户id字段(username/email)

读取的密码字段(password)

乃至于验证方法(bcrypt)都是可以自己定制的。

如果你是用5.1LTS的版本,可以先去看一下认证这一章节的文档

另外看一下你AuthController和UserModel里所默认使用的Trait

User(Model)里的Trait:Authenticatable

AuthController(Controller)里的Trait:AuthenticatesAndRegistersUsers(下的AuthenticatesUsers)

中间的实现的方法都是你可以在对应的Model和Controller里自己定制覆盖的
比如你所要求的用户名不一样,就可以通过覆盖loginUsername方法搞定:

/**
 * Get the login username to be used by the controller.
 *
 * @return string
 */
public function loginUsername()
{
    return property_exists($this, 'username') ? $this->username : 'email';
}

多看文档,多读源码。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板