[英]Custom redirect path if Registration fails on Laravel 5.3
我想在Laravel 5.3
Registration
失败时更改重定向路径,它会重定向到上一页,但是我想更改它,但找不到位置。
<?php
use RegistersUsers;
protected $redirectTo = '/';
public function __construct()
{
$this->middleware('guest');
}
protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255|min:6',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|min:6|confirmed',
]);
}
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
}
?>
<?php
use RedirectsUsers;
public function showRegistrationForm()
{
return view('auth.register');
}
public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
$this->guard()->login($user);
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}
protected function guard()
{
return Auth::guard();
}
protected function registered(Request $request, $user)
{
}
?>
关于如何实现这一点,是否有任何想法,因为我想在主页上创建一个注册Modal
,并且由于它是一个模态,所以用户直到再次打开注册Modal
才看不到错误,因此我想* *失败的注册尝试**总是重定向到/ register。
感谢您的帮助
重写RegisterController
的RedirectsUsers
register
函数,如下所示。
public function register(Request $request) {
$this->validator($request->all())->validate();
$user = $this->create($request->all());
if(empty($user)) { // Failed to register user
redirect('/register'); // Wherever you want to redirect
}
event(new Registered($user));
$this->guard()->login($user);
// Success redirection - which will be attribute `$redirectTo`
redirect($this->redirectPath());
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.