试图获取非对象的属性“名称”(查看:
我的会话期满时收到此错误。因此,当您刷新浏览器时,我收到此错误,我该如何解决该问题。
这个错误发生在我的五个blade.php文件中。当我在这些刀片中并刷新浏览器时,我会收到此错误。
<li class="nav-item dropdown nav-user">
<a class="nav-link nav-user-img" href="#" id="navbarDropdownMenuLink2" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><img src="assets/images/avatar-1.jpg" alt="" class="user-avatar-md rounded-circle"></a>
<div class="dropdown-menu dropdown-menu-right nav-user-dropdown" aria-labelledby="navbarDropdownMenuLink2">
<div class="nav-user-info">
<h5 class="mb-0 text-white nav-user-name">
{{ Auth::user()->name }}
{{ Auth::user()->email }}
</h5>
@csrf
<span class="status"></span><span class="ml-2">Online</span>
</div>
<a class="dropdown-item" href="#"><i class="fas fa-user mr-2"></i>Account</a>
<a class="dropdown-item" href="#"><i class="fas fa-cog mr-2"></i>Setting</a>
<a class="dropdown-item" href= "{{ route('logout') }}" ><i class="fas fa-power-off mr-2"></i>Logout</a>
</div>
</li>
答案 0 :(得分:2)
您可以使用Auth::check()
因此您的刀片部分应如下所示:
@if(Auth::check())
<h5 class="mb-0 text-white nav-user-name">
{{ Auth::user()->name }}
{{ Auth::user()->email }}
</h5>
@endif
另外,如果访问者在未登录时不应该看到此刀片,则可以将中间件添加到您的路线中
Route::middleware(['auth'])->group(function () {
// your routes here
});
这会在用户未登录时将用户重定向到登录页面。
答案 1 :(得分:0)
您的查询返回数组还是对象?如果将其转储出去,您可能会发现它是一个数组,而您需要的只是数组访问([])而不是对象访问(->)。