【laravel6.0】同じログイン画面で、一般ユーザとadminユーザを振り分ける(Gateを使ってusersの管理権限をadminユーザのみにする)

【laravel6.0】同じログイン画面で、一般ユーザとadminユーザを振り分ける(Gateを使ってusersの管理権限をadminユーザのみにする)

usersテーブルからadminテーブルを作るより簡単!

複数の企業が利用できるECサイト(楽天みたいな)をlaravel5.5で作る場合は、権限が複数(ユーザ・企業・システム管理者)必要なので、実装してみた。

1, usersテーブルにカラム追加(roleとかadmin_flagみたいな感じで)

2, app/Providers/AppServiceProvider.phpにGateを記述

3, app/Http/Controllers/Auth/LoginController.phpに、ログイン後のリダイレクト先を、管理者かどうかで振り分ける。

4, userテーブルのcrud(新規作成・更新・削除)操作は、管理者だけ出来るようにする。
app/Http/Controllers/Auth/RegisterController.phpに、ユーザの新規作成を認証済ユーザだけに変更する

5, routes/web.phpで、ルーティングを振り分ける

6, ここまで来たら、usersテーブルのcrudを作る。AdminController.phpとviews/admin/いろいろ.blade.phpを作るだけなので省略。