Как сделать url для действия текущего контроллера в Laravel 5

Я хочу использовать некоторый помощник URL-адреса в blade-сервере, который создает URL-адрес для другого действия текущего контроллера. Например, мой текущий маршрут MuMu@index, и я хочу создать URL для другого действия show.


person FreeLightman    schedule 23.10.2015    source источник
comment
Это работает, но у меня сложная структура контроллера. Требуется строка только для того, чтобы написать URL-адрес для действия. И не нужно писать имя контроллера. Это то же самое. Мне нужно только название действия (thisAction('show'))   -  person FreeLightman    schedule 23.10.2015


Ответы (1)


Один из способов - создать помощника:

function thisAction($action, $params) {
 $route = Route::current()->getAction()['controller'];
 $controller = "\\". explode('@', $route)[0];
 return action($controller . '@' . $action, $params);
}

Итак, в лезвии: {{ thisAction('show', $myParam) }}. Также можно расширить синтаксис laravel, поэтому в результате он будет @thisAction ('show'), но сейчас я не знаю, как это сделать.

person FreeLightman    schedule 23.10.2015