【发布时间】:2018-04-18 04:14:06
【问题描述】:
我对@987654325@ 还很陌生,我目前正在为我的项目进行手动身份验证。
我已经尝试Auth::attempt 来验证已输入的凭据,并且我已经看到它可以工作,因为我在验证时被重定向到我想要的页面。
但是,当我尝试在已重定向到的视图中执行 Auth::check 时,它似乎返回 FALSE 并且不读取经过身份验证的用户。这使得该视图的特定部分不可见。对此有何见解?非常感谢!
控制器
namespace App\Http\Controllers;
use DB;
use Session;
use Illuminate\Http\Request;
use Auth;
class LoginController extends Controller
{ //
public function index()
{
return view('view_login');
}
public function verify(Request $request)
{
$credentials = $request->only('username', 'password');
if (Auth::attempt($credentials)) {
// Authentication passed...
return redirect('dashboard');
}
else
{
return redirect('/');
}
}
查看
@if (Auth::check())
<li><a href="dashboard.html"> Hello {{ Auth::user()->username }} </a></li>
@endif
更新:
我尝试在身份验证后放置dd(auth()->user());,并且我已经看到了经过身份验证的用户的属性。但是,将它放在仪表板控制器上后,它返回 NULL。有人可以帮我解决这个问题吗?
【问题讨论】:
-
它应该可以工作,代码中没有问题。如果视图被缓存,请使用此命令 php artisan view:clear
-
我试图清除它,不幸的是它仍然没有显示
-
在视图中试试这个:auth()->check() 或 \Auth::check()
-
似乎仍然不起作用。 ☹️
-
身份验证后您是否进入仪表板页面?并删除控制器顶部的行:使用 Auth;然后尝试。
标签: php laravel laravel-5.6