ログイン認証ページ作成

Laravelのログイン認証

Laravelでは面倒なログイン認証処理は、いくつかのスカフォルド(テンプレート)で作成できます。

種類

  • Laravel Breeze
  • Laravel Jetstream
  • Laravel Fortify

Laravel Breezeとは

「Laravel Breeze」はLaravelのスカフォールドの1つで、基本的な認証機能をプログラムなしで初期導入できます。「Jeststream」と比較すると開発が簡単で、Laravelの公式でも慣れていない開発者に推奨しています。

Laravel Breezeの利用方法

Laravel Breezeインストール

composer

Laravelプロジェクトを作成したら、composerコマンドで「Laravel Breeze」をインストールします。

ターミナル
composer require laravel/breeze --dev

artisan

「Laravel Breeze」をインストールしたら、artisanコマンドでインストールします。

ターミナル
php artisan breeze:install

各設問では「blade」を選択し、その他はデフォルト(no)で進めていきます。

  Which stack would you like to install?
  blade ........................................ 0  
  react ........................................ 1  
  vue .......................................... 2  
  api .......................................... 3  
❯ 0

  Would you like to install dark mode support? (yes/no) [no]
❯ 

  Would you prefer Pest tests instead of PHPUnit? (yes/no) [no]
❯ 

インストールが完了しました。

トップページ確認

インストールが完了したら、ブラウザでトップページを確認してましょう。「Log in」「Register」リンクが表示されていれば成功です。

Vite

Viteとは

Vite(ヴィティ)は、Webアプリケーション開発の高速で軽量なビルドツールです。主にJavaScriptフレームワークやライブラリや開発サーバとして利用されます。

Vue.jsの標準ビルドツール

Viteは、JavaScriptフレームワークVue.jsプロジェクトのデフォルトのビルドツールで、Vue.jsアプリケーションの開発において特に便利です。

Laravelのビルドツール

従来のLaravelでは、Webpackというビルドツールを利用していましたが、Viteは高速なビルドができるため、「Laravel9.x」からVite採用されました。

npmコマンド

「package.json」のスクリプトで、devに対してviteコマンドが設定されています。

package.json
    "scripts": {
        "dev": "vite",
        "build": "vite build"
    },

よってnpmコマンドで、JSに関するフロントエンドを更新できます。

npm run dev

データベース設定

「.env」で設定

あらかじめ MySQLに新規DB「sample_laravel」を作成しておき、「.env」でデータベース設定します。

.env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_sample
DB_USERNAME=root
DB_PASSWORD=
  • データベース名:laravel_sample
  • ユーザ名:root
  • パスワード:なし ※ユーザ名、パスワードは、本番ではセキュリティに注意して設定してください

DBマイグレート

DB接続設定をしたら、DBマイグレートをします。マイグレーションファイルは、LaravelとBreezeであらかじめ用意されています。

ターミナル
php artisan migrate

DBマイグレートが成功しました。

結果
Creating migration table .............................................14ms DONE

   INFO  Running migrations.  

  2014_10_12_000000_create_users_table ..................................... 24ms DONE
  2014_10_12_100000_create_password_resets_table ........................... 19ms DONE
  2019_08_19_000000_create_failed_jobs_table ............................... 7ms DONE
  2019_12_14_000001_create_personal_access_tokens_table .................... 12ms DONE

テーブル確認

DB管理ツールでテーブルが作成されていることを確認します。

Laravel超入門