前提・実現したいこと
Laravel5.5にて認証機能を作成したいです。
userテーブルではなく、独自テーブルを利用しなければなりません。
テーブル名:xx_mst_login
カラム:
- xx_id (pk,autoincrement),
- xx_login_id(メールアドレスです),
- xx_password (hash化されていません)
※remember_tokenの追加は事情により難しいです。
xx_mst_user.xx_passwordのカラム名を暫定でpasswordに変更し、
格納されているパスワードをhash化してします。
発生している問題・エラーメッセージ
デフォルトのlogin画面から、
xx_login_id / xx_password を入力してログインすることはできたのですが、
認証状態が維持されておらず、
ログイン ⇒ /homeにリダイレクト ⇒ 未認証状態により/loginにリダイレクト
されている状態です。
/login画面のログイン処理直後はAuth:check() = true が返ってきますが、
ログイン後の/home ではAuth::check() = false が返ってきています。
認証状態の維持に必要な修正等、ご教示いただけますと幸いです。
該当のソースコード
【config/auth.php】
User Providers設定にて、
'model' => App\User::class, を
'model' => App\Models\XxMstLogin::class,
に変更。
【resources/views/auth/login.blade.php】
「email」を「xx_login_id」に全置換。※input type="email"はそのまま
【App/Models】
XxMstLogin.php を追加。
内容は、
protected $table = 'xx_mst_login';
protected $primarykey = 'xx_id';
の記載。
【App/Http/Controllers/Auth/LoginController.php】
public function username() { return 'xx_login_id'; }
の追加。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/04 10:28
2019/10/04 10:38
2019/10/04 10:50
2019/10/04 11:00
2019/10/04 11:18