为什么在Laravel AuthController中覆盖postRegister不起作用?

amb*_*ide 2 php authentication overriding laravel

我正在调整Laravel 5.2中开箱即用的AuthController以满足我的需求.注册新用户时,不希望新用户自动登录.我已阅读,通过重写从AuthController的RedirectsUsers性状的postRegister方法,你可以改变工作流程.所以我的AuthController看起来像这样:

 class AuthController extends Controller {
   ...
   protected function create(array $data) {
   }

   public function postRegister(Request $request) {
     $validator = $this->validator($request->all());
     if ($validator->fails()) {
        $this->throwValidationException(
            $request, $validator
        );
     }
     $this->create($request->all());
     return redirect($this->redirectPath());
   }
 }
Run Code Online (Sandbox Code Playgroud)

但是,我的postRegister方法似乎被忽略了.我哪里错了?

Can*_*lik 5

您需要覆盖寄存器功能

 public function register(Request $request)
    {
        $validator = $this->validator($request->all());

        if ($validator->fails()) {
            $this->throwValidationException(
                $request, $validator
            );
        }

        // Removed to prevent auto login
        //Auth::guard($this->getGuard())->login($this->create($request->all()));
        $this->create($request->all());


        return redirect($this->redirectPath());
    }
Run Code Online (Sandbox Code Playgroud)

  • 我压倒了`postRegister()`,失去了3个小时,直到我看到了你的答案 (2认同)