Мне нужно выбрать страну на домашней странице и показать только продукты и города для этой страны на всем сайте
Route::group(['prefix' => '{country}', 'middleware' => 'country'], function () {
// all site routes
}
и промежуточное ПО
public function handle($request, Closure $next)
{
$countryShortcode = $request->route('country');
$routeName = $request->route()->getName();
$routeParameters = $request->route()->parameters();
if ($request->session()->has('redirect_to_country')) {
$redirectTo = $request->session()->get('redirect_to_country');
if ($country === $redirectTo) {
$request->session()->forget('redirect_to_country');
} else {
$routeParameters['country'] = $redirectTo;
return redirect()->route($routeName, $routeParameters);
}
}
$country = Country::where('country_shortcode', '=', $countryShortcode)->first();
if ($country === null) {
return redirect('/');
}
$request->session()->put('country', $country);
$request->session()->save();
return $next($request);
}