https://readouble.com/laravel/8.x/ja/authentication.html
こちらのドキュメントを参考にしてLaravelの認証機能のカスタマイズをしています。
EmailとPasswordの他にUsersテーブルにstatusを追加してstatusが1だったときに認証するようなカスタマイズをしています。
app/app/Http/Controllers/Auth/LoginController.php
にコントローラを追加して、
<?php namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; class LoginController extends Controller { /** * 認証の試行を処理 * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function authenticate(Request $request) { var_dump($request); $credentials = $request->validate([ 'email' => ['required', 'email'], 'password' => ['required'], ]); if (Auth::attempt(['email' => $email, 'password' => $password, 'status' => 1])) { $request->session()->regenerate(); return redirect()->intended('dashboard'); } return back()->withErrors([ 'email' => 'The provided credentials do not match our records.', ]); } }
を追加しました。テーブルやテーブルの値には問題ありません。
こちらはAuthのファサードをオーバーライドしてくれると思ったのですが、認証時にスルーされているようでした。
こちらのコントローラを読み込ます上で何か他に手続きがあるのでしょうか。
よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。