私は、ユーザーが複数のゲームを持っていますが、ユーザーが複数のを持っている場合、私は毎回エラーをリダイレクトしてしまった場合、私は別のビューを表示したい、ユーザーが持っているどのように多くのゲームは、ログインすることによりミドルウェアチェックを持っている:Laravelはミドルウェアの内部にリダイレクトしますか?
これは、ケース$assigned_games > 1
$games = Auth::user()->userGames;
$assigned_games = count($games);
if ($assigned_games == 1) {
return $next($request);
} elseif ($assigned_games > 1) {
return redirect()->route('games.board');
} elseif ($assigned_games < 1) {
echo "no game bought";
exit;
}
に私が唯一return route('games.board')
でも試してみましたが、それは動作しません。
ここで正しいリダイレクトを設定するにはどうすればよいですか?両方のあなたのルートがミドルウェア内にある場合
を避けるためにリダイレクトするべきではないのですか? –
@AlexeyMezeninはあなたを何度もリダイレクトしました。 – nowilius
コードは正しいですが、games.boardルートがそのミドルウェアを使用すると、リダイレクトループに入るので、リダイレクトしているルートが再びリダイレクトされるべきではないため、games.boardルートはこのミドルウェアを使用しません。 –