当用户登录时,我会执行以下操作:
$remember_me = true;
if(Input::has('remember_me')){
$remember_me = true;
}else{
$remember_me = false;
}
if (Auth::attempt(array('username' => Input::get('username'), 'password' => Input::get('password')), $remember_me))
{
echo Auth::user()->picture;exit;
}
return Redirect::back()->withInput()->withErrors(Input::all())->with(array('errorMessage'=>'Username or password is not correct'));
如你所见,我正在打印图片的值,这是正确的。所以用户已登录,我应该可以在另一个控制器中像这样打电话给他/她
$user = Auth::user();
echo $user->firstName;exit
但我明白了:
ErrorException
Trying to get property of non-object
我已经把我记住了。我该怎么办才能使用经过身份验证的用户?
非常感谢答案 0 :(得分:2)
exit
使用一个函数。return
。原因是Laravel处理了一些函数的最终实现,设置为设置标题,cookie等。当你exit
时,你将这个过程短路,所以Laravel无法完成它的一些功能,因此你会得到错误。