TransWikia.com

Problema redireccionamiento login AUTH

Stack Overflow en español Asked by DANIEL FELIPE LOPEZ VARGAS on December 9, 2021

Cuando se logea el admin se supone que deberia redireccionarse a una vista llamada admin , pero en vez de eso cuando el admin se logea se redirecciona al login del usuario.

Web.php

Auth::routes();
 Route::prefix('admin')->group(function(){
Route::get('/login', 'AuthAdminLoginController@showLoginForm')->name('admin.login');
Route::post('/login', 'AuthAdminLoginController@login')->name('admin.login.submit');
Route::get('/', 'AdminController@index')->name('admindashboard');
});

Este el el adminlogincontroller

public function __construct()
{
    $this->middleware('guest:admin');
}

public function showLoginForm()
{
    return view('auth.admin-login');
}

public function login( Request $request )
{

    // Validate form data
    $this->validate($request, [
        'email'     => 'required|email',
        'password'  => 'required|min:6'
    ]);

    // Attempt to authenticate user

    // If successful, redirect to their intended location
    if ( Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember) ) {
        return redirect()->intended( route('admindashboard') );
    }

    // Authentication failed, redirect back to the login form
    return redirect()->back()->withInput( $request->only('email', 'remember') );

}

}

este es el admincontroller

<?php

namespace AppHttpControllers;

use IlluminateHttpRequest;

class AdminController extends Controller
{
   public function __construct()
    {
        $this->middleware('auth:admin');
    }


    public function index()
    {
        return view('admin');
    }
}

One Answer

Estás usando el método intended(), el cual va a redireccionar a la página anterior o a la cual se intentaba acceder antes. Si dicha url no está disponible, entonces va a ir a la que le pases como parámetro de entrada.

Esto se puede ver en el código de dicho método:

public function intended($default = '/', $status = 302, $headers = [], $secure = null)
{
    $path = $this->session->pull('url.intended', $default);

    return $this->to($path, $status, $headers, $secure);
}

En tu caso puedes usar simplemente el método route() para redirigir a la ruta que deseas:

return redirect()->route('admindashboard');

Answered by Shaz on December 9, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP