我正在使用Laravel,并在控制器中返回一个视图:
return view('leaderboard');
我想将查询参数添加到响应中。因此,网址应更改为https://site.test?stand=true
我该怎么做?显然这是行不通的:
return view('leaderboard', ['stand' => true]);
当我尝试这样做时:
return redirect()->route('leaderboard', ['stand' => true]);
我得到无限重定向。我该怎么办?
答案 0 :(得分:3)
似乎您一次又一次地重定向到同一操作。您可以添加条件以验证URL中是否存在查询参数,然后渲染视图,否则重定向。
赞:
if (!$request->has('stand')) {
return redirect()->route('leaderboard', ['stand' => true]);
}
return view('leaderboard');
答案 1 :(得分:1)
如果您有一个命名的路由,并且想使用params重定向到url:
route('route', ['foo' => 'baz', 'bar' => 'foo']);
如果您想附加到网址
url('path') . '?' . http_build_query(['foo' => 'baz', 'bar' => 'foo']);
为了将传递路线重定向为参数。
redirect(route('name', [...]))