Redirect laravel 5.2按id注册后重定向
我在这里找到了一些示例,但它们并没有回答如何通过id将注册用户重定向到他自己的配置文件Redirect laravel 5.2按id注册后重定向,redirect,laravel-5,laravel-5.2,Redirect,Laravel 5,Laravel 5.2,我在这里找到了一些示例,但它们并没有回答如何通过id将注册用户重定向到他自己的配置文件 protected$redirectPath='/profile/view/'.$user->id没有帮助。 我有一个项目,用户在没有电子邮件确认的情况下被授权,他们在注册后被发送到/home 到用户配置文件的路径是:/profile/view/id(id当然是唯一的)。 我设法在登录后将它们发送到那里(在AuthController中: public function authenticated($requ
protected$redirectPath='/profile/view/'.$user->id代码>没有帮助。
我有一个项目,用户在没有电子邮件确认的情况下被授权,他们在注册后被发送到/home
到用户配置文件的路径是:/profile/view/id
(id当然是唯一的)。
我设法在登录后将它们发送到那里(在AuthController中:
public function authenticated($request,$user)
{
return redirect('/profile/view/'.$user->id);
}
但注册后重定向到配置文件,我无法处理。方法1。
允许用户在没有ID的情况下查看自己的配置文件
路线(使ID可选):
控制器:
public function view($id = null) {
if (is_null($id) { //set id of currently signed in user if id == null
$id = Auth::user()->id;
}
//continue as before
}
方法2。
修改路由,使重定向发生在正确的url上
注意:路线的顺序很重要
注意:在这两种方法中,都必须使用auth
中间件,否则,如果用户未登录,就会出现错误(PHP错误:尝试获取第X行非对象的属性
)
使用这两种方法,您只需将用户重定向到profile/view
:
显示的是配置文件(URL中没有ID)
被重定向到正确的urlprofile/view/ID
非常感谢!!!第一个变体还可以..我刚刚添加了}elseif(isset($id)){//继续像以前一样
public function view($id = null) {
if (is_null($id) { //set id of currently signed in user if id == null
$id = Auth::user()->id;
}
//continue as before
}
Route::get('profile/view', function() {
return redirect()->route('profile.view', ['id' => Auth::user()->id]);
});
Route::get('profile/view/{id}', ...)->name('profile.view');