我的控制器中有$user
变量,我想重定向到传递$ user变量的路由。在路线中,我正在做的就是返回视图。
这是我从控制器返回的方式:
return Redirect::route('welcome')->with('user',$user);
我的路线看起来像这样:
Route::get('welcome', array('as' => 'welcome', function() {
return view('main');
}));
或者例如,如果我想返回一个布尔变量,只是为了知道用户刚刚注册(例如,我可以向他们展示欢迎弹出窗口),我该怎么办?
将$user
变量传递给我的视图的最佳方式是什么?
我知道我可以直接使用return view('main')->with(['user' => $user]);
,但这会让链接变得难看。
答案 0 :(得分:0)
因为您只是尝试将数据传递到另一个视图而不通过URL传递。您可以使用会话。如果注册正常,请保存在这样的会话中:
session(['signedup' => true]);
然后在欢迎页面中,将其视为
$isSignedUp = session('signedup');
从那里,你可以对$isSignedUp
变量做任何事情。
答案 1 :(得分:0)
我想你应该试试这个:
return Redirect::to('/welcome?user='. $user);
或强>
return view('welcome',compact('user'));
希望这对你有用!