2015-09-04 104 views
0

有一个选项可以使用用户名电子邮件一次登录字段。但我会登录到网站使用这两个字段,用户名或电子邮件, 意思是:如果用户输入值与用户名列或电子邮件列匹配,然后登录到系统。Laravel 5.1:如何使用用户名或电子邮件字段登录

laravel 5.1 have trait 认证用户包含此代码。它只检查单个列。

$ credentials = $ this-> getCredentials($ request);

if (Auth::attempt($credentials, $request->has('remember'))) { 
    return $this->handleUserWasAuthenticated($request, $throttles); 
} 

请指引我,登录尝试两个列(电子邮件或用户名)

回答

2

假设你知道如何验证表单字段,只需要用户名验证以及在验证规则

然后在你的控制器验证登录像

if (Auth::attempt(['username' => $request->username, 'password' => $request->password])){ 
//suceess 
} 
elseif (Auth::attempt(['email' => $request->email, 'password' => $request->password])){ 
//logged in using email 
} 
else{ 
echo fail 
} 

看一看这个thread以及

相关问题