Проверка подлинности Laravel с новой моделью и защитой завершается неудачно: неопределенный индекс: модель - PullRequest
2 голосов
/ 23 марта 2019

Я пытаюсь аутентифицировать свое приложение Laravel (5.8) с помощью дополнительной модели и защиты. Проблема, я получаю ошибку «Неопределенный индекс: модель» во время следующего входа в систему. Есть идеи, что я делаю не так? Я использовал эту интеграцию в 5.7 версии Laravel, и она работала там без проблем.

 auth()->guard('partner')->login($partner);

enter image description here

CodeSnippets:

Модель партнера (дополнительные настройки)

class Partner extends Authenticatable  {

protected $guard = 'partner';

    public function getRouteKeyName()
    {
        return 'uuid';
    }

}

Гвардейцы (config.auth.php)

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

        'partner' => [
            'driver' => 'session',
            'provider' => 'partners',
        ],
],

Поставщики (config.auth.php)

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

    'partners' => [
        'driver' => 'eloquent',
        'table' => \App\Models\Partner::class,
    ],
],

Промежуточное программное обеспечение Gorup (kernel.php)

protected $middlewareGroups = [

        'partner' => [
            \App\Http\Middleware\EncryptCookies::class,
            \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
            \Illuminate\Session\Middleware\StartSession::class,
            //\Illuminate\Session\Middleware\AuthenticateSession::class,
            \Illuminate\View\Middleware\ShareErrorsFromSession::class,
            \App\Http\Middleware\VerifyCsrfToken::class,
        ],

];

RouteServiceProvider

  protected function mapPartnerRoutes()
    {
        Route::prefix('partner')
            ->middleware(['partner'])
            ->namespace($this->namespace)
            ->group(base_path('routes/partner.php'));

    }

Фреймы приложения Ошибка

enter image description here

1 Ответ

2 голосов
/ 23 марта 2019

Я думаю, вам не хватает конфигурации модели в вашем partners провайдере аутентификации, то есть:

'partners' => [
    'driver' => 'eloquent',
    //'table' => \App\Models\Partner::class,
    'model' => \App\Models\Partner::class,
],
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...