このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン 最新のリビジョン 両方とも次のリビジョン | ||
プログラム言語:php:laravel:認証:laravel7でマルチ認証 [2021/03/11 17:51] humolife [その他書き換え] |
プログラム言語:php:laravel:認証:laravel7でマルチ認証 [2021/05/26 17:50] humolife [コントローラー] |
||
---|---|---|---|
行 34: | 行 34: | ||
# マイグレーションの実行 | # マイグレーションの実行 | ||
php artisan migrate | php artisan migrate | ||
+ | </ | ||
+ | |||
+ | ===== モデル ===== | ||
+ | app 直下にある User.php を app\Models の中に 移動。 | ||
+ | < | ||
+ | // ディレクトリを移動したので、namespace を書き換え | ||
+ | namespace App; | ||
+ | ↓ | ||
+ | namespace App\Models; | ||
+ | </ | ||
+ | < | ||
+ | // app\Models\User.php の内容をコピペし、クラス名を書き換える | ||
+ | class User extends Authenticatable | ||
+ | ↓ | ||
+ | class Admin extends Authenticatable | ||
+ | </ | ||
+ | モデルファイルのパスが変わったので、関係するファイルも書き換え。 | ||
+ | < | ||
+ | use App\User; | ||
+ | ↓ | ||
+ | use App\Models\User; | ||
+ | </ | ||
+ | < | ||
+ | ' | ||
+ | ↓ | ||
+ | ' | ||
</ | </ | ||
行 44: | 行 70: | ||
</ | </ | ||
< | < | ||
+ | // 追加 | ||
+ | use App\Models\User; | ||
+ | |||
public function run() | public function run() | ||
{ | { | ||
- | // 追加 | + | // 本番環境以外でのみアカウントを追加 |
- | | + | |
- | | + | $user = User::where('email', |
- | ' | + | |
- | ' | + | $user = new User(); |
- | ' | + | $user->name = ' |
- | | + | |
+ | | ||
+ | | ||
+ | } | ||
+ | | ||
} | } | ||
</ | </ | ||
< | < | ||
+ | // 追加 | ||
+ | use App\Models\Admin; | ||
+ | |||
public function run() | public function run() | ||
{ | { | ||
- | // 追加 | + | // 本番環境以外でのみアカウントを追加 |
- | | + | |
- | | + | $admin = Admin::where('email', |
- | ' | + | |
- | ' | + | $admin |
- | ' | + | $admin->name = ' |
- | | + | |
+ | | ||
+ | | ||
+ | } | ||
+ | | ||
} | } | ||
</ | </ | ||
行 85: | 行 125: | ||
</ | </ | ||
- | ===== モデル ===== | ||
- | app 直下にある User.php を app\Models の中に 移動。 | ||
- | < | ||
- | // ディレクトリを移動したので、namespace を書き換え | ||
- | namespace App; | ||
- | ↓ | ||
- | namespace App\Models; | ||
- | </ | ||
- | < | ||
- | // app\Models\User.php の内容をコピペし、クラス名を書き換える | ||
- | class User extends Authenticatable | ||
- | ↓ | ||
- | class Admin extends Authenticatable | ||
- | </ | ||
- | モデルファイルのパスが変わったので、関係するファイルも書き換え。 | ||
- | < | ||
- | use App\User; | ||
- | ↓ | ||
- | use App\Models\User; | ||
- | </ | ||
- | < | ||
- | ' | ||
- | ↓ | ||
- | ' | ||
- | </ | ||
===== コンフィグ ===== | ===== コンフィグ ===== | ||
認証の設定ファイルをマルチ認証対応に書き換える。 | 認証の設定ファイルをマルチ認証対応に書き換える。 | ||
行 232: | 行 247: | ||
* user → admin | * user → admin | ||
※ AuthenticatesUsers を AuthenticatesAdmins に置換しないように注意 | ※ AuthenticatesUsers を AuthenticatesAdmins に置換しないように注意 | ||
+ | |||
+ | ==== ログイン後のリダイレクト先を Admin 用に書き換える ==== | ||
+ | < | ||
+ | protected $redirectTo = RouteServiceProvider:: | ||
+ | </ | ||
===== ルーティング ===== | ===== ルーティング ===== | ||
< | < |