Php 为什么在Laravel AuthController中重写后寄存器不起作用?

Php 为什么在Laravel AuthController中重写后寄存器不起作用?,php,laravel,authentication,overriding,Php,Laravel,Authentication,Overriding,我正在调整Laravel 5.2中开箱即用的AuthController,以满足我的需要。注册新用户时,不希望新用户自动登录。我已经读到,通过重写AuthController中的RedirectsUsers特性中的postrester方法,可以改变工作流程。因此,我的AuthController如下所示: class AuthController extends Controller { ... protected function create(array $data) {

我正在调整Laravel 5.2中开箱即用的AuthController,以满足我的需要。注册新用户时,不希望新用户自动登录。我已经读到,通过重写AuthController中的RedirectsUsers特性中的postrester方法,可以改变工作流程。因此,我的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());
   }
 }

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

您需要覆盖寄存器函数

 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());
    }

正如下面的答案所示,默认身份验证不会创建到
postRegister
的路由,而是创建到
register
的路由
php artisan route:list
查看路由指向的方法。谢谢你,Celik这确实覆盖了(应该检查路由列表)。我覆盖了
postRegister()
,浪费了3个小时,直到我看到你的答案我也在做同样的事情:)