Роуты:
Route::any('/', function () {
return redirect()->route('getpage', ['index']);
});
Route::any('{requestedPage}/{requestedSubPage?}', [
'as' => 'getpage',
'uses' => 'PagesController@getpage'
]);
Пэйдж-контроллер(функция отвечающая за распределение страниц):
public function getpage($requestedPage = 'index', $requestedSubPage = null)
{
$wantedPage = $requestedSubPage ? $requestedSubPage : $requestedPage;
$page = Pages::findByUrlOrFail($wantedPage);
if (is_null($page)) {
abort(404);
}
$page = $page->toArray();
if ($page['type'] == 'static') {
return view('pages.static')->with($page);
}
return redirect()->action('App\Http\Controllers\PagesController@test'); // Эта строка не работает, почему-то
}
Если тип страницы указан как "динамический", то нужно подключать контроллер для этой страницы.
redirect()->action() не работает и именно из-за этого вся проблема, как мне кажется.
Где ошибка? Думается, что роуты запутал немного. Возможно есть вариант другого решения с подобными требованиями?(Инфа о страницах хранится в БД).
Спасибо.