Laravel 验证登录
Posted
技术标签:
【中文标题】Laravel 验证登录【英文标题】:Laravel Validation login 【发布时间】:2017-12-06 22:37:03 【问题描述】:这次我正在学习验证。我不能为我的登录表单执行此操作... 我的代码现在看起来像这样,它仅在我有错误时才有效,但此代码不想登录我的用户。我的代码中应该有什么工作以及为什么它现在不起作用?我也不知道这个验证如何知道哪个电子邮件和密码应该与登录名和来自哪个表进行比较?我应该在某处添加此信息吗?
public function login(Request $request)
$this->validate($request, [
'email' => 'required|max:255|email',
'password' => 'required|confirmed',
]);
return redirect()->intended('/panel');
【问题讨论】:
【参考方案1】:您可以考虑将 trait AuthenticatesUsers
添加到您的控制器中:
class LoginController extends Controller
use \Illuminate\Foundation\Auth\AuthenticatesUsers; // <- add this line
// ...
然后你可以抛出你的login
方法,一切都会奏效。更多信息here。
但如果你想构建自己的身份验证系统(我不推荐),你必须更多地挖掘。你可以看看here。然后像这样更新你的控制器:
public function login(Request $request)
$this->validate($request, [
'email' => 'required|max:255|email',
'password' => 'required|confirmed',
]);
if (Auth::attempt(['email' => $email, 'password' => $password]))
// Success
return redirect()->intended('/panel');
else
// Go back on error (or do what you want)
return redirect()->back();
【讨论】:
以上是关于Laravel 验证登录的主要内容,如果未能解决你的问题,请参考以下文章