Auth :: trynt () с настраиваемым именем охранника

Я хочу, чтобы у peserta была другая аутентификация с администратором. Я уже создал все необходимое в adminController, логин работает отлично. но когда я пытаюсь сделать pesertaController, вход в систему не работает, функция Auth по-прежнему переходит к охране администратора, а не к охраннику peserta

Я использую эту настройку защиты, чтобы сделать различную аутентификацию между администратором и песерой

auth.php:

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

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

        'admin' => [
            'driver' => 'sanctum',
            'provider' => 'users',
        ],

        'peserta' => [
            'driver' => 'sanctum',
            'provider' => 'pesertas',
        ],
    ],

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

        'pesertas' => [
            'driver' => 'eloquent',
            'model' => App\Models\Peserta::class,
        ],

    ],

проблема здесь в том, что я не знаю, как ttemnt peserta с его собственными учетными данными (nomor_peserta и пароль)

мой текущий код:

if(!Auth::guard("peserta")->attempt($credentials)){
                return ResponseFormatter::error([
                    'message' => 'Invalid username or password',
                ],'Authentication Failed', 400);
            }

guard (peserta) вызывает ошибку: Неопределенный метод 'попытка' на Auth :: guard (peserta) - ›попытка ($ credentials)

если я использую Auth :: try ($ credentials), он просто работает для защиты по умолчанию: admin, и я не хочу, чтобы это произошло

есть ли решение для этого?


person UDIN    schedule 20.04.2021    source источник
comment
Ответ на ваш вопрос: stackoverflow.com/questions/58630073/   -  person Emil Georgiev    schedule 20.04.2021