2015-08-20 8 views
11

sto usando laravel 5.1.8. sto creando un sistema di login/registrazione. ho creato un controller chiamato AdminController e lo ho protetto con il middleware.redirect laravel se effettuato il login

ma sto usando AuthController di default di laravel quali metodi e classi si trovano in posizioni diverse. dove i percorsi sono:

Route::Controllers([ 
    'auth' => 'Auth\AuthController', 
    'password' => 'Auth\PasswordController' 
]); 

get('admin', '[email protected]'); 
get('profile', '[email protected]'); 
get('article', '[email protected]'); 

gli utenti non possono accedere ad AdminController senza effettuare l'accesso. Il suo reindirizzamento alla pagina di accesso. ma voglio, se un utente che ha effettuato l'accesso digitato l'indirizzo della pagina di accesso o la registrazione sulla barra degli indirizzi del browser, la pagina verrà reindirizzato a AdminController.

quando provo a farlo, cerca '/ home' e restituisce errori. voglio farlo '/ admin'.

risposta

23

andare a App\Http\Middleware\RedirectIfAuthenticated poi cambiarlo da

public function handle($request, Closure $next) 
{ 
    if ($this->auth->check()) { 
     return redirect('/home'); 
    } 

    return $next($request); 
} 

a

public function handle($request, Closure $next) 
{ 
    if ($this->auth->check()) { 
     return redirect('/admin'); 
    } 

    return $next($request); 
} 
2

Aggiungi questo al vostro AuthController:

protected $redirectTo = '/admin'; 

Questo dice tutti i metodi di reindirizzamento nei vari tratti a redirec t lì anziché a /home.

0

quando un utente viene autenticato correttamente, verrà reindirizzato all'URI/home, che sarà necessario registrare un percorso da gestire. È possibile personalizzare la posizione di reindirizzamento post-autenticazione definendo una proprietà redirectPath su AuthController:

protetto $ redirectPath = '/ dashboard';

+0

creare la dashboard del percorso – santoshvijaypawar

Problemi correlati