Мне любопытно, потому что я не могу найти много документации по этому вопросу — Как бы я назвал маршрут, если бы я также хотел вызвать закрытие?
Я нашел, как я могу вызвать функцию контроллера, но не как назвать маршрут.
Именованный маршрут:
Route::get( '{foo}', ['as' => 'foo.home', 'uses' => 'FooController@home'] );
Маршрут закрытия с вызовом контроллера:
Route::get( '{foo}', function() {
$fooController = $app->make('FooController');
return $fooController->callAction('home', $parameters = array());
});
Но я не могу найти, как включить название маршрута во второй пример.
Вы можете использовать массив с name
а также uses
также:
Route::get('{foo}', array('name' => 'foo.home', 'uses' => function(){
$fooController = $app->make('FooController');
return $fooController->callAction('home', $parameters = array());
}));
Это также работает без uses
(Laravel распознает тип Closure
)
Route::get('{foo}', array('name' => 'foo.home', function(){
$fooController = $app->make('FooController');
return $fooController->callAction('home', $parameters = array());
}));
Других решений пока нет …