2016-12-31 107 views

回答

4

5.3你只需要重写注册方法。您可以添加以下到您App\Http\Controllers\Auth\RegisterController

/** 
* Handle a registration request for the application. 
* 
* @param \Illuminate\Http\Request $request 
* @return \Illuminate\Http\Response 
*/ 
public function register(Request $request) 
{ 
    $this->validator($request->all())->validate(); 

    event(new Registered($user = $this->create($request->all()))); 

    //The auto login code has been removed from here. 

    return redirect($this->redirectPath()); 
} 

此外,您可以更改重定向路径在register方法本身或只是更新对类的顶部$redirectTo财产。

希望这会有所帮助!

1

在5.3中,您需要覆盖register()方法RegisterController.php这将在使用make:auth命令后生成。只是评论login()部分:

//$this->guard()->login($user); 
1

没有AuthController.php在Laravel 5.3 *所以修改RegisterController.php并添加这些行

use Illuminate\Http\Request; use Illuminate\Auth\Events\Registered;

然后,添加此行办理登记请求用于上述参数

public function register(Request $request) 
{ 
    $this->validator($request->all())->validate(); 
    event(new Registered($user = $this->create($request->all()))); 
    return $this->registered($request, $user) 
     ?: redirect($this->redirectPath()); 
} 

$this->guard()->login($user); 
1

内部RegistersUsers特点是有功能

protected function registered(Request $request, $user) 
{ 
    if(!$user->active){ 
     // store msg in session and display to user 
     Auth::logout(); 
    } 
} 

这是执行,一旦用户注册,甚至在这里你检查检查,如果用户进行验证,任何其他代码和验证::注销(),这是最好的方式功能去做吧。不需要改变其他任何可以混淆框架的代码。

+0

这个文件在哪里'RegistersUsers'? – PseudoAj