为了账号安全,请及时绑定邮箱和手机立即绑定

登录后重定向 laravel 7 给我白页,没有错误

登录后重定向 laravel 7 给我白页,没有错误

PHP
凤凰求蛊 2023-07-30 11:13:45
我正在使用 Laravel 7。我在 LoginController 中定制了登录方法,检查您输入的是“申请人”还是“业务”并重定向到不同的路线,应该是非常基本的。现在登录后,它给我空白的白页,Laravel 日志或 laravel 开发服务器上没有错误。protected function login(Request $request){    $credentials = $request->only('email', 'password');    if (Auth::attempt($credentials)) {        $user = Auth::user();        if (Auth::check()) {            if ($user->userType === 'Applicant') {                return redirect()->route('home');            }            if ($user->userType === 'Business') {                return redirect()->route('dashboard');            }        }    }}这段代码有什么问题?网页.php:Route::get('login', 'Auth\LoginController@showLoginForm')->name('auth.login');Route::post('login', 'Auth\LoginController@login')->name('login');Route::get('/home', 'HomeController@index')->name('home');Route::get('/dashboard', 'HomeController@dashboard')->name('dashboard');家庭控制器public function __construct(){    $this->middleware('auth');}public function index(){    return view('home');}public function dashboard(){    return view('dashboard');}---- 添加了 Home.blade.php ----@extends('layouts.app')@section('content')<div id="app" class="ml-1 mr-1 border border-dark">      <dashboard v-bind:u-Id="{{ Auth::user()->id }}"        v-bind:p-Id="{{ auth()->user()->profile()->first()->id }}"        > </dashboard></div>@endsection
查看完整描述

2 回答

?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

我建议不要为此覆盖登录方法。相反,我建议使用经过身份验证的“hook”:


protected function authenticated(Request $request, $user)

{

    if ($user->userType === 'Applicant') {

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

    }


    if ($user->userType === 'Business') {

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

    }

}


查看完整回答
反对 回复 2023-07-30
?
qq_笑_17

TA贡献1818条经验 获得超7个赞

有一个默认的重定向页面更符合逻辑,例如home. 我认为下面的代码更明智。


protected function login(Request $request){

    $credentials = $request->only('email', 'password');


    if (Auth::attempt($credentials)) {


        $user = Auth::user();


        if (Auth::check()) {


            if ($user->userType === 'Business') {

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


            } else {

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

            }

        }

    }

}

如果您想要另一个默认重定向页面,请elseif在部分中使用并添加您的默认页面else。


查看完整回答
反对 回复 2023-07-30
  • 2 回答
  • 0 关注
  • 90 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信