今回はLaravelを使って認証機能を導入してみたいと思います。
バージョン5以前では「php artisan make::auth」コマンド実行のみで導入できたようですが、そのコマンドがなくなってしまっているということで、新しい方法で導入してみました。
当記事執筆時点でLaravelのバージョンは7.3になります。
Laravelの認証機能で導入される機能についてはこちらの記事で紹介しています。
以前の記事でLaravelに認証機能を入れる方法を記事にしました。 Laravelの認証機能を使って実装できる5つの機能がありますので、見ていけたらと思います。 まずはルーティングを探り、[…]
DB設定
まずは、データベースの設定をしましょう。
Laravel の データベースの設定は.envファイルを書き換えることでできます。
MySQL を使用する場合は以下のようにしておきましょう。
DB_CONNECTION=mysql
DB_HOST=データベースのホスト名
DB_PORT=ポート番号
DB_DATABASE=データベース名
DB_USERNAME=データベースのユーザ名
DB_PASSWORD=データベースのパスワード
SQLiteを使用する場合は以下のようにしておきましょう。
DB_CONNECTION=sqlite
DB_DATABASE=SQLiteのファイルへの絶対パス
laravel/ui を導入し、認証を入れる
まずは、composerからlaravel/uiを入手しましょう。
$ composer require laravel/ui
# Package manifest generated successfully.
インストールできたか不安な方は以下コマンドを実行してみてください。
$ php artisan list
# uiという項目があればインストールできている
できたら、以下のコマンドで認証を導入します。
$ php artisan ui vue --auth
# Vue scaffolding installed successfully.
# Please run "npm install && npm run dev" to compile your fresh scaffolding.
# Authentication scaffolding generated successfully.
最後に指示どおりに”npm install && npm run dev”を実行します。(npmがない人はインストールしてください。)
$ npm install && npm run dev
# DONE Compiled successfully in 6692ms
これで、認証機能は導入できて、デフォルトページの右上にログインへのリンクが表れるようになります。
マイグレーション実行
認証機能実装に必要なマイグレーションを実行しテーブルを作成したら完了です。artisanコマンドでマイグレーションを実行しましょう。
$ php artisan migrate
# Migration table created successfully.
これで、ユーザ作成やログインなどが可能になると思います。
おまけ: vueなしで導入する
vueを使用しなくても、以下コマンドだけで認証が入れられるようです。
Laravel側の必要な部分は作成されるっぽいです。
$ php artisan ui:auth
実装されるのは機能のみで、見た目は質素なので、自分でカスタマイズする必要があります。
APIとしてLaravelを使用する場合にはこちらを選択するといいかと思います。
最後に
Laravelでは上記の通り、非常に簡単に、10分ほどで認証機能を導入できてしまいます。
Laravelで提供される認証機能を使用することで、コンテンツの作成に集中することができますね。
冒頭でも書きましたが、認証機能で導入された機能についてまとめた記事も書きましたので、よかったら見ていってください。
以前の記事でLaravelに認証機能を入れる方法を記事にしました。 Laravelの認証機能を使って実装できる5つの機能がありますので、見ていけたらと思います。 まずはルーティングを探り、[…]