[英]How to redirect a user after a create method laravel6?
我在 front_page 中制作了一个注册表单,我想在成功注册后将用户重定向到 /home 页面,但是我得到了一个数组并且用户没有被重定向。
{"email":"example@example.com","paypal_email":"example@example.com","updated_at":"2020-02-
14
08:16:32","created_at":"2020-02-14 08:16:32","id":1}
我的路线:
Route::post('/', 'Auth\RegisterController@create')->name('auth.register');
注册控制器:
public function create(Request $request)
{
return User::create([
'email' => $request['email'],
'paypal_email' => $request['paypal_email'],
'password' => Hash::make($request['password']),
]);
}
public $redirectTo = '/home';
改变这个:
public function create(Request $request)
{
return User::create([
'email' => $request['email'],
'paypal_email' => $request['paypal_email'],
'password' => Hash::make($request['password']),
]);
}
对此:
public function create(Request $request) { $create = User::create([ 'email' => $request['email'], 'paypal_email' => $request['paypal_email'], 'password' => Hash::make($request['password']), ]); if($create){ return redirect('/home'); } //Return errors here }
要了解有关 Laravel 重定向的更多信息,请单击此处
出于一些原因,您不应直接调用create
方法。
create
方法实际上是为 laravel trait RegistersUsers
内部使用的。 你可以保持这样的控制器,你只需要改变你的路线来register
。
Route::post('/', 'Auth\RegisterController@register')->name('auth.register');
通过这样做,应该创建用户并将其重定向到主页。
还有一个原因public $redirectTo = '/home';
此属性存在,通过直接使用create
方法,您将完全忽略该属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.