You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel中Auth::user()->name报Trying to get property of non-object错误求助

解决Laravel中Auth::user()->name报错Trying to get property of non-object的问题

兄弟,这个问题我太熟了!报错Trying to get property of non-object本质就是Auth::user()返回了null——说白了就是当前访问页面的用户根本没登录,或者系统没识别到已登录的用户。哪怕你移除了包含该代码的div,错误依然存在,大概率是视图其他地方也用到了Auth::user()相关调用,或者有缓存残留的问题。我给你一步步排查解决:

1. 先在视图里做登录判断,避免直接调用属性

不管用户是否登录,先做个判断再渲染用户信息,这是最稳妥的写法:

@extends('layouts.app')
@section('content')
<div class="container">
    <div class="card">
        <div class="card-header bg-dark text-light">
            <h5 class="card-title">
                @if(Auth::check())
                    User dashboard for {{ Auth::user()->name }}
                @else
                    Please log in to access the dashboard
                @endif
            </h5>
            <!-- 其他按钮代码 -->
        </div>
        <!-- 表格代码 -->
    </div>
</div>
@endsection

2. 检查路由是否添加了Auth中间件

如果你的home路由没有被auth中间件保护,未登录用户也能访问页面,自然会出现这个错误。打开routes/web.php,确保路由是这样的:

// 方式一:用auth中间件组
Route::middleware(['auth'])->group(function () {
    Route::get('/home', [HomeController::class, 'index'])->name('home');
});

// 方式二:单独给路由加中间件
Route::get('/home', [HomeController::class, 'index'])->name('home')->middleware('auth');

这样未登录用户访问/home时会被自动跳转到登录页,不会进入报错的视图。

3. 清除视图缓存

有时候Laravel的视图缓存会残留旧代码,导致修改后依然报错。打开终端,运行以下命令清除缓存:

php artisan view:clear

如果还不行,顺便清一下应用缓存:

php artisan cache:clear

4. 检查认证配置是否正确

打开config/auth.php,确认默认守卫和用户模型配置没问题:

'defaults' => [
    'guard' => 'web', // 默认守卫是web,对应下面的guards配置
    'passwords' => 'users',
],

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],
],

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\Models\User::class, // 确保指向正确的用户模型
    ],
],

5. 临时调试确认用户状态

如果还是找不到问题,可以在视图里临时添加调试代码,看看Auth::user()到底返回什么:

{{ dd(Auth::user()) }} <!-- 这行代码会打印当前用户信息,确认是否为null -->

如果输出是null,说明确实没有用户登录;如果有用户对象,那可能是视图其他地方还有错误调用。

内容的提问来源于stack exchange,提问作者user9588742

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:59:26