如何在View :: composer上访问url参数

时间:2014-07-28 11:59:24

标签: php laravel laravel-routing

我想在方法View::composer中收到网址参数,但我不知道该怎么做...

这是在filters.php中:

View::composer('profile.followers', function($view){
    dd($view->parameters);
    $view->with('menus', $menus);
});

这是我的路线:

Route::get('/outfit/{id}/{slug}', [
    'uses'      => 'PictController@view',
    'as'        => 'pict.view',
    'before'    => 'assets'
]);

这是我的控制器:

public function followers($username){
   $d['d'] = Follow::with('followers')->where('id_user_to', 10)->get();
   $this->layout->nest('content', 'profile.followers', $d);
}

2 个答案:

答案 0 :(得分:4)

可能会在Router上查看Laravel API文档,您可以使用Route::current()返回Route个实例。

然后根据Route文档,您可以使用parameters()

例如:

$currentRoute = Route::current();
$params = $currentRoute->parameters();

dd($params); // Will dump the keys and values of current route parameters

<强>更新 请注意,这仅适用于4.1+,在此之前方法名称不同。

// 4.1+
Route::current();
Route::parameters();

// Before 4.1
Route::getCurrentRoute();
Route::getParameters();

答案 1 :(得分:1)

你可以这样做

View::composer('profile.followers', function($view){
   //$data contains id/slug
   $viewdata= $view->getData();
   dd($viewdata['id']);

    $view->with('menus', $menus);
});