3 votes

Le réinitialisateur de mot de passe [users] n'est pas défini.

Je suis coincé avec ce problème et je n'arrive pas à trouver la solution. Je cherche quelques conseils. Je développe un nouveau projet avec Laravel et je travaille actuellement sur l'authentification des utilisateurs. J'utilise le module d'authentification de Laravel 5.8.

J'ai fait quelques changements mineurs dans les vues de récupération de mot de passe, j'ai déplacé reset.blade.php et email.blade.php hors du répertoire passwords, dans le répertoire parent auth.

Voici la capture d'écran du répertoire actuel

Après cela, j'ai modifié les routes pour qu'elles correspondent aux changements précédents directement sur 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');

Le routage fonctionne correctement, mais je continue à obtenir l'erreur suivante : "InvalidArgumentException - Password resetter [users] is not defined.

vendeur \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)
    );
}

Gracias.

J'ai toujours le problème, pas de chance avec la solution.

2voto

Votre problème est sur votre config/auth.php le fichier de configuration. La configuration par défaut de laravel reset password est :

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

Si vous souhaitez personnaliser les courtiers, consultez à nouveau la documentation.

Laravel - Personnalisation de Password Broker

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X