Средство сброса пароля [пользователи] не определено - PullRequest
3 голосов
/ 17 июня 2020

Я застрял с этой проблемой и не могу найти решение. ищу какую-то ориентацию. Я разрабатываю новый проект с laravel, в настоящее время работаю над аутентификацией пользователей. Я использую модуль аутентификации laravels 5.8.

Сделал некоторые незначительные изменения в представлениях восстановления пароля, переместил reset.blade. php и email.blade. php из каталога паролей в родительский каталог auth .

вот скриншот текущего каталога

После этого изменил маршруты в соответствии с предыдущими изменениями прямо на Router.php;

>  $this->get('reset','Auth\ForgotPasswordController@showLinkRequestForm')->name('password.request');
>  $this->post('email', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.email');
>  $this->get('reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.reset');
>  $this->post('reset', 'Auth\ResetPasswordController@reset')->name('password.update');

Маршрутизация работает правильно, но по-прежнему появляется эта ошибка «InvalidArgumentException - средство изменения пароля [пользователи] не определено». на

vendor \ laravel \ framework \ src \ Illuminate \ Auth \ Passwords \ PasswordBrokerManager. php

>  protected function resolve($name)
>     {
>         $config = $this->getConfig($name);
>         
>         if (is_null($config)) {
>             throw new InvalidArgumentException("Password resetter [{$name}] is not defined.");
>         }
>  
>         // The password broker uses a token repository to validate tokens and send user
>         // password e-mails, as well as validating that password reset process as an
>         // aggregate service of sorts providing a convenient interface for resets.
>         return new PasswordBroker(
>             $this->createTokenRepository($config),
>             $this->app['auth']->createUserProvider($config['provider'] ?? null)
>         );
>     }

Спасибо!

Еще есть проблема, не повезло с исправлением.

1 Ответ

0 голосов
/ 17 июня 2020

Ваша проблема в вашем конфигурационном файле config/auth.php. Конфигурация по умолчанию для сброса пароля laravel:

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

Если вы хотите настроить брокеров, проверьте документацию еще раз

Laravel - Настройка брокера паролей

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...