mgsmus Yanıtınız için çok teşekkür ederim. Üyelik bilgilerimi unuttuğumdan günlerdir giriş yapamıyordum 😀
Aslında yapmaya çalıştığım şey middleware ile yapılamıyor.
public function handle($request, Closure $next)
{
$param = array_values(($request->route()->parameters()));
$model = $this->searchModel($request->route()->getName());
$response = $next($request);
$view = $response->original;
$data = $view->getData(); //view data
$view = $view->getName(); // View path
$model = app($model)::where(config('multilang_post.models')[$model]['slug_column'], $param[0])->first();
$lang = 'en';
$current_lang_content = $model->getLangPost($lang);
$data['news'] = $current_lang_content;
if ($current_lang_content) {
return redirect()->route('multilangpost::query', [
'route'=>$request->route()->getName(),
'view'=>$view,
'slug' => $param[0],
]);
}
return $next($request);
}
Burada middleware ile kontrol ettirdim daha sonrasında eğer varsa yeniden rotalamaya yolladım.
Yolladığım yerdeki controller da şu şekilde
` public function query($route,$view,$slug){
foreach(Route::getRoutes() as $value){
if ( $value->getName() == $route){
$controller = $value->getActionName();
$params = $value->parameterNames();
}
}
$controller = explode('@',$controller);
$fooController = app()->make($controller[0]);
$clasure = new Response();
$teste = $clasure->send($fooController->callAction($controller[1], $params));
die(); `
Tam burada kaldım. Belki başka bir yolu vardır hala araştırmaya devam ediyorum.