Laravel 6.0 パスワード無しでログイン
9桁のシリアルコードを入力することでログインするシステムを想定して作る
認証をインストール
composer require laravel/ui 1.*
php artisan ui vue --auth
app/Http/Controllers/Auth/LoginController.php
ログイン処理を変更
/**
* ログイン処理
*
* シリアルコードのみでログインするように変更
*/
public function login(Request $request)
{
$this->validateLogin($request);
$userLoginColumn = $this->username();
$serialcode = $request->$userLoginColumn;
$userOrNull = User::where($userLoginColumn, $serialcode)->first();
if ($userOrNull)
{
// 認証成功時、ユーザーIDからIDを取り出す。
$userId = $userOrNull->id;
$id = Auth::loginUsingId($userId);
return redirect('/');
} else {
// 認証失敗時
throw ValidationException::withMessages([
$userLoginColumn => [trans('auth.failed')],
]);
}
}
デフォルトのバリデーションではパスワードが必須となっているので変更する
ここから先は
5,049字
¥ 100
この記事が気に入ったらサポートをしてみませんか?