2
votes

Remplacer les routes d'authentification par défaut dans Laravel 5.8

J'utilise la route auth par défaut dans mon web.php.

Cette route est copiée de `Illuminate / Routing / Router.php '.

Je l'utilise pour changer route par défaut et ... dans web.php

Route::group([], function (){

    // Authentication Routes...
    $this->get('login', 'Auth\LoginController@showLoginForm')->name('login');
    $this->post('login', 'Auth\LoginController@login');
    $this->post('logout', 'Auth\LoginController@logout')->name('logout');

    // Registration Routes...
    if ($options['register'] ?? true) {
        $this->get('register', 'Auth\RegisterController@showRegistrationForm')->name('register');
        $this->post('register', 'Auth\RegisterController@register');
    }

    // Password Reset Routes...
    if ($options['reset'] ?? true) {
        $this->resetPassword();
    }

    // Email Verification Routes...
    if ($options['verify'] ?? false) {
        $this->emailVerification();
    }
});

Qu'est-ce que $ options [] ?? p >

Où dois-je le définir dans mon groupe de routes?

Merci de votre aide.


0 commentaires

3 Réponses :


0
votes

Le tableau $ options est utilisé pour configurer l'enregistrement comme indiqué ici . Il est donc utilisé pour indiquer si vous souhaitez activer ou désactiver l'enregistrement des utilisateurs, la réinitialisation du mot de passe et la vérification des e-mails.


1 commentaires

milles mercis . mais où dois-je le définir dans mon groupe de routes?



2
votes

Cette méthode dans Illuminate / Routing / Router.php n'est pas destinée à être copiée comme vous l'avez fait. Normalement, il doit être utilisé avec la façade Auth , comme ceci: Auth :: routes ($ options); . Cela appelle la méthode route () et doit être effectué dans un fichier d'itinéraire, généralement web.php si vous n'avez rien changé.

De cette façon, les options sont bien prises en compte. Maintenant, dans votre cas, il n'est pas nécessaire de disposer d'un tableau $ options facultatif, puisque vous avez copié les routes.

Pour éviter toute erreur dans votre fichier d'itinéraire, vous avez deux choix:

1) Utilisez Auth :: routes () (avec le tableau d'options si nécessaire). Vous pouvez bien sûr remplacer les itinéraires que vous souhaitez modifier.

2) Creusez dans les méthodes emailVerification et resetPassword afin de copier / coller les routes auxquelles elles font référence, et supprimez toute référence à $ this et $ options dans votre fichier d'itinéraire


0 commentaires

0
votes

Je ne vois absolument aucune raison d'écraser le groupe par défaut. Supprimez simplement Auth :: routes () , de web.php, et implémentez vos propres routes, selon les contrôleurs.


0 commentaires