首页 > 解决方案 > 未定义的属性:Illuminate\Auth\SessionGuard::$Auth(在 laravel 7.30.4 中)

问题描述

试图做一个多认证系统。管理员的索引页面未打开,出现上述错误消息。 管理员登录控制器

网页.php

管理员控制器

错误信息

现在我想在系统中有两个用户。Auth.php 的代码已在下面提到:

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

    'api' => [
        'driver' => 'token',
        'provider' => 'users',
        'hash' => false,
    ],

    'madmin' => [
        'driver' => 'session',
        'provider' => 'madmins',
    ],
],

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
    ],

    // 'users' => [
    //     'driver' => 'database',
    //     'table' => 'users',
    // ],

    'madmins' => [
        'driver' => 'eloquent',
        'model' => App\Madmin::class,
    ],
],


'passwords' => [
    'users' => [
        'provider' => 'users',
        'table' => 'password_resets',
        'expire' => 60,
        'throttle' => 60,
    ],

    'madmins' => [
        'provider' => 'madmins',
        'table' => 'password_resets',
        'expire' => 60,
        'throttle' => 60,
    ],
],

标签: laravelauthenticationadminlaravel-7

解决方案


我认为您必须像这样删除第二个 Auth

if(Auth::guard('madmin')->attempt())

然后继续你的代码


推荐阅读