なおのつぼやき

Webエンジニアです。PHP/Laravel、あとRustを少々

Laravel8でログイン機能を触ってみた

先日Laravel8がリリースされました。

laravel-news.com

そこで早速Laravel8を使ってログイン機能を触ってみたいと思います。

Laravelのインストール

composer create-project --prefer-dist laravel/laravel laravel.8.x

インストールが終わったらバージョン確認してみると、8になっていますね。
この記事を書いている時にはすでに8.0.4になっていたのでリリース後もすぐにバグ対応が色々入っていみみたいです。

$ php artisan -V
Laravel Framework 8.0.4

画面の確認

無事にインストールが終わったらローカルサーバーを立ち上げて、http://127.0.0.1:8000にアクセスしてみます。

$ php artisan serve
Starting Laravel development server: http://127.0.0.1:8000

今までと違って黒い画面が出ましたね。
Laravel7では白い画面だったと思います。

f:id:nao-tuboyaki:20200911224254p:plain

データベースの設定

サクッとやろうと思うのでSQLiteを使います。

.envファイルにあるデータベースの設定を修正します。 DB_CONNECTION以外はコメントにしておきます。

DB_CONNECTION=sqlite
#DB_HOST=127.0.0.1
#DB_PORT=3306
#DB_DATABASE=laravel
#DB_USERNAME=root
#DB_PASSWORD=

データベースファイルを作成しておきます。

$ touch database/database.sqlite

laravel/jetstreamのインストール

Laravel8の新機能です。

github.com

何ができるのか公式サイトに書いてあることを翻訳すると

ログイン
登録
メール検証
2段階認証
セッション管理
APIサポート(Laravel Sanctum)
チーム管理

なんか色々できるみたいです。

認証周りはLaravel7まではlaravel/uiパッケージを使っていましたが、
Laravel8からこちらのパッケージを使うように変わった感じですね。

では、さっそくインストールです。

composer require laravel/jetstream

インストール後に機能を使うためのコマンドを実行する際のパラメータで
livewireinertiaのどちらかを選ぶみたいですが、今回はlivewireでやろうと思います。
(正直このへんはよくわかっていないので別の機会にお勉強します、、、)

php artisan jetstream:install livewire

npm install && npm run dev

php artisan migrate

あとはさきほどのローカルサーバーにアクセスすると、右上の方にLoginRegisterが出ていればインストール完了ですね。

ログイン f:id:nao-tuboyaki:20200911233059p:plain

ユーザー登録 f:id:nao-tuboyaki:20200911233135p:plain

ユーザー登録後にはダッシュボードも見れるようになりました。 f:id:nao-tuboyaki:20200911233414p:plain

あとはプロフィール f:id:nao-tuboyaki:20200911233438p:plain

まとめ

Laravel8のログイン機能をさらりと使ってみました。
手順的にはLaravel7までとあまり変わらない感じもありますが、利用できる機能が全然違いますね。