#laravel #authentication
Вопрос:
У меня есть два пользователя customn в моем приложении Laravel — admin
и customer
. При входе в систему они автоматически перенаправляются на свою собственную домашнюю страницу, но теперь я хотел бы перенаправить их на «предназначенную» страницу. Учетные данные пользователя «публикуются»в моем processLogin
методе LoginControllers, который подробно описан ниже:
public function processLogin(Request $request) { $request-gt;validate([ 'email' =gt; 'required|email', 'password' =gt; 'required' ]); $credentials = $request-gt;only('email', 'password'); if(Auth::guard('admin')-gt;attempt($credentials)) { return redirect()-gt;intended('/admin')-gt;withSuccess('Signed In'); } if(Auth::guard('customer')-gt;attempt($credentials)) { return redirect()-gt;intended('/home')-gt;withSuccess('Signed In'); } return redirect('/login')-gt;withErrors('The username and/or password you supplied are incorrect. Please check and try again.'); }
С помощью этого кода я вижу url.intended
, что переменная сеанса установлена правильно, но они все равно перенаправляются на соответствующую домашнюю страницу. Как я могу intended()
правильно использовать кредитное плечо?
Не уверен, что это полезно, маршрут определяется как:
Route::post('/process-login', [LoginController::class, 'processLogin'])-gt;name('login.submit');