У меня есть запасной маршрут в конце Интернета. php. Он ищет в модели текущий ярлык и должен перенаправить на правильное действие контроллера. Если пул не найден, он продолжит показывать ошибку 404.
В этом резервном маршруте я хочу иметь возможность решить, какой контроллер и какое действие вызывать. Проблема в том, что если я вызову просто Route :: get () или redirect-> route (), он изменит URL-адрес. Но я хочу, чтобы URL остался прежним. Возможно ли это?
Моя текущая функция маршрута:
Route::get('/{any}', function ($any){
$routeKey = \App\Models\RouteKey::where('key', $any)->first();
if(is_null($routeKey)) {
abort(404);
}
if($routeKey->routable_type == 'App\Models\Category') {
return redirect()->route('category.show', $routeKey->routable_id);
//return action('CategoryController@show', $category->slug);
} elseif($routeKey->routable_type == 'App\Models\Product') {
return redirect()->route('product.show', $routeKey->routable_id);
}
});