Laravel:認証エラーの場合ログインページへジャンプ
Laravelでログインしてない時 loginページへジャンプ
テーブル数が100を超え、作成したページもかなりの数になってきました。
ずーっと気にはなっていたんです。タイムアウトした後ログイン頁へ自動ジャンプしない事。
でも自分で作ったページたちの中にはちゃんとリダイレクトされるものもある。
ん~~~。
調べて実装した備忘録です。
home画面などはリダイレクトされている
最初に作ったhome画面などはしっかりリダイレクトされていました。
と言うことは、当初参考にさせて頂いたスクリプトにはredirectの指示が入っていたと言う事です。
比較してみるとルートの以下の命令が消失していました。
Route::group([‘middleware’ => [‘auth’, ‘can:user’]], function () {});
これか!
実装したスクリプト
1 2 3 4 5 6 |
/* routes/web.php */ Route::group(['middleware' => ['auth', 'can:user']], function () { //商品SKU Route::resource('products', 'ProductController'); }); |
これで無事に未認証で【/products】に来た場合ログイン頁に飛ばされるようになりました。
全てのコントローラーにリダイレクト書かなきゃいけないかと冷や冷やしてましたが簡単で助かりました。
まとめ
redirect先を複数使い分けたい場合はコントローラーに記載する方法もあるそうです。
ログインの有無のみを確認しログイン頁へ促す場合は routes/web.php で指示するのが最も簡単なようです。
-
前の記事
Laravel:maigrationでカラムにコメント付与 2019.01.15
-
次の記事
Laravel:【Warning: Ambiguous class resolution】の解決 2019.01.16
コメントを残す