こんにちは、@Manabu です。
Laravelでアプリケーションを開発するときに、最も気になるのがログイン機能ですよね。
ユーザー認証はどのアプリでも重要な部分ですが、一から作るとなるとかなりの時間と労力がかかります。
簡単にログイン機能を実装できたらな〜
このような要望を叶えてくれる、素晴らしいツールがLaravelには存在します。
Laravel Breezeというツールを使えば、ログイン機能や登録機能など、基本的な認証機能を簡単にセットアップすることができます。
今回は、Laravel Breezeを使用して、ログイン画面からその機能までを簡単にセットアップする方法を紹介したいと思います。
この記事は、以下のような方におすすめです。
ぜひ参考にして下さい。
はじめに
今回のLaravel Breezeを実装するにあたって、どういうものなのかと前提条件についてお話しします。
Laravel Breezeとは?
Laravel Breezeは、Laravelフレームワークに簡単でモダンな認証機能を提供する軽量なスターターキットです。
開発者がユーザー登録、ログイン、パスワードリセットなど、基本的な認証機能をすばやくセットアップできるように設計されています。
以下の認証機能が含まれています。
・ログイン:既存のユーザーがアプリケーションにログインできる
・パスワードリセット:ユーザーのパスワードをリセットできる
・メール検証:パスワードを忘れたとき、登録されているメールアドレスで検証が可能
・ダッシュボード:ログイン後のユーザー向けに、基本的なダッシュボードページを提供
・プロファイル:ユーザーの情報を変更したり削除できる
これらのシンプルな機能を、軽量でかつ迅速に導入することができます。
前提条件
今回、実装するにあたって Laravelアプリは既に作成済みであることを想定しています。
まだ実装されていない方は、 Laravelアプリの作成をお願いします。
以下は、EC2のAmazon Linux2023に Laravelアプリの環境構築を行なっている記事になります。ぜひ、参考にしてください。
今回はそれぞれ以下のバージョンで行なっています。
実装手順
では、Laravel Breezeを実装する手順について紹介していきます。
Laravel Breezeのインストール
Composerを使って、Breezeパッケージをインストールします。
composer require laravel/breeze --dev
次に、Breezeをインストールしてセットアップを実行します。
// このartisanコマンドでいくつか質問されます。
php artisan breeze:install
npm install
npm run dev
※npmがインストールされていない場合、以下のコマンドでNode.jsとnpmをインストールしてください。インストールが完了したら、再度上記のコマンドを実行してください。
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
sudo yum install -y nodejs
// インストール確認
npm -v
node -v
DBの設定
次にデータベースの設定を行います。
※DBの設定が完了している人は、つひに進んで下さい。
データベースの作成を行っていない方は、以下の記事を参考に作成からお願いします。
DBを作成したら、.envファイルに設定を追加します。
// パスワードやDB名、ユーザー名は作成したものを設定してください
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_database_user
DB_PASSWORD=your_database_password
設定が完了したら、マイグレーションを実行してDBに必要なテーブルを作成します。
php artisan migrate
ここまでくると、対象のLaravelアプリにログイン機能が追加されているでしょう。
確認
セットアップすると幾つもの機能を使用することができます。以下は、4つの例です。
ブラウザで以下のように検索すると、それぞれの画面と機能が使用できます。
・https://test.site/register(ユーザー登録)
・https://test.site/login(ログイン)
・https://test.site/dashboard(ダッシュボード)
・https://test.site/profile(プロファイル)
デザインもシンプルでかっこいいですよね!
まとめ
今回は、Laravel Breezeを使用して、簡単にログイン機能を実装する方法について紹介しました。
機能を考えると、アプリを開発してすぐ実装するのが良いかと思います。
たくさんの主要な機能を簡単に実装することができるので、ぜひ参考にしていただければと思います。