2015-01-18 3 views
0

Я использую групповую логику для фильтрации раздела администратора моего сайта. У меня есть маршрутизации, как это:Laravel Routing - Как передать переменную в подпрограммы?

Route::group(array('before' => 'auth'), function() { 

    $datas['user']['email'] = Auth::user()->email; 

    Route::get('admin/dashboard', function() { 
     return View::make('admin/dashboard')->with(array('datas' => $datas)); 
    }); 
    //other routes... 
}); 

Как сделать $datas доступным для всех маршрутов, которые входят в мою группу?

+1

Посмотрите на этот ответ. [View Composer] (http://stackoverflow.com/a/27852897/2888851) –

ответ

0

Вы можете поделиться переменные:

View::share('datas', $datas); 
return View::make('admin/dashboard'); 
0

Как вы заявили, что вы хотели бы включить $datas в каждом маршрут, вы можете использовать ключевое слово use:

Route::group(array('before' => 'auth'), function() 
{ 
    $datas['user']['email'] = Auth::user()->email; 

    Route::get('admin/dashboard', function() use ($datas) 
    { 
     return View::make('admin/dashboard')->with(array('datas' => $datas)); 
    }); 
}); 

You может узнать о ключевое слово usehere.