我的视图提供了http://finance.dev/home/customer/6#tab_1_3
之类的链接,以便用户a可以使用链接直接导航到页面中的标签页。
在我的路线中,我有:
Route::get('/home/customer/{id}',[
'as' => 'home.customer',
'uses' => 'CustomerController@show'
]);
Route::get('/home/customer/{id}/{navigate}/{tab}',[
'as' => 'home.customer.navigate',
'uses' => 'CustomerController@navigate'
]);
我正在使用以下路线传递所需的变量:
window.location.href = '/home/customer/'+id+'/'+navigate+'/'+tab;
我的控制器逻辑是:
public function navigate($id, $navigate, $tab)
{
$user = customer::find($id);
if($navigate == 'previous')
{
// get previous user id
$go = customer::where('id', '<', $user->id)->max('id');
}
elseif ($navigate == 'next') {
// get next user id
$go = customer::where('id', '>', $user->id)->min('id');
}
else{
return \Redirect::back();
}
return \Redirect::route('home.customer', array('id' => $go));
}
以上代码成功返回http://finance.dev/home/customer/6
现在我想弄清楚如何定义\Redirect::route
和\Redirect::back()
来返回http://finance.dev/home/customer/6#tab_1_3
我该如何解决这个问题?
答案 0 :(得分:1)
$url = URL::route('home.customer', ['id' => $go])."#tab_1_6";
return \Redirect::to($url);
参考Link