php - 如何根据用户在 Laravel 6 中选择的“国家”更改所有刀片并获取产品
问题描述
我需要在主页中选择国家,并在所有站点中仅显示该国家的产品和城市
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);
}
解决方案
推荐阅读
- spring-integration - “isConnected()”控制总线命令spring集成
- angular - 在 angular5 应用中显示通知
- angularjs - 无法使用访问令牌和 ng-file-upload 从 AngularJS 向服务器发送文件
- r - R:计算字符串中的连续字母
- android - UsageStatsManager 的每日间隔错误
- algorithm - 并行线性搜索 O(1) 吗?
- powershell - 指定日期范围内没有用户的用户会话数据
- mysql - 在更新查询中排序
- php - 在 PHP 中使用带有变量名的 GET 和 POST 数组
- vba - 根据另一个单元格的值锁定某些单元格