LaravelJetstream-フレームワークの新しい足場

Laravel 8リリースには、ログイン、登録、電子メール確認、2要素認証、セッションおよびコマンド管理を含むユーザー認証システムを迅速に展開するための新しいフレームワークが含まれています。Jetstreamには、トークンベースのAPI認証用のLaravelSanctum統合も組み込まれています。



画像



スタックの選択



Laravel Jetstreamには、LivewireInertia.jsの2つのフロントエンドスタックが付属しています。どちらのスタックもアプリケーションに反応性を追加します。両者の違いは、LivewireがテンプレートエンジンとしてBladeを使用し、Inertia.jsがVueを使用することです。どちらの場合も、CSSフレームワークとしてTailwindが使用されます。



インストール



新しいプロジェクトを作成する場合は、フラグを付けてLaravelインストーラーを使用できます--jetインストールはインタラクティブになり、スタックを選択してチームを管理するように求められます。インストール後、データベースに移行する必要があります。

laravel new project-name --jet
php artisan migrate


Composerを使用して、完成したプロジェクトにパッケージを追加します。

composer require laravel/jetstream


次に、選択したスタックに応じて、2つのうちの1つを選択します。コマンド管理が不要な場合は、フラグ--teamsを削除する必要があります。



凄腕:

php artisan jetstream:install livewire --teams


Inertia.js:

php artisan jetstream:install inertia --teams


NPMパッケージをインストールし、データベースを移行して、インストールを完了します。

npm install && npm run dev
php artisan migrate


ユーザープロファイル



Laravel Jetstreamを使用すると、ユーザーは自分のプロファイルに移動したり、情報を更新したり、写真をアップロードしたりすることができます。写真をインストールする機能を無効にすることができますconfig/jetstream.php

画像



二要素認証



2要素認証を有効にした後、ユーザーはリカバリコードを保存し、ワンタイムパスワード対応アプリケーション(動的パスワード)を使用して結果のQRコードをスキャンする必要があります。これは、たとえば、GoogleAuthenticatorまたは1Passwordである可能性があります。

画像



API



JetstreamはSanctumと統合されており、ユーザーはさまざまな権限(作成、読み取り、更新、削除)でアクセストークンを生成できます。この機能はで無効にできますconfig/jetstream.php

画像



コマンド



オプションを指定してJetstreamをインストールした場合teamsは、コマンド管理インターフェイスが表示されます。各ユーザーは、1つまたは複数のチームのメンバーになることができます。デフォルトでは、新しいユーザーは彼にちなんで名付けられたチームのメンバーです。たとえば、ユーザーJohnの場合、これはJohnのチームになります。



ユーザーは、このコマンドの名前を変更するか、追加のコマンドを作成できます。他のユーザーは、自分の電子メールアドレスを知っているだけでチームに招待でき、サイトに登録されている必要があります。チームの所有者は、他のメンバーに役割を割り当てます。役割は、管理者または編集者にすることができます。編集者が読み取り、作成、更新のみを行うことができる場合、管理者は完全な権限を持ちます。つまり、削除を除いて、すべて同じ権限があります。

画像



All Articles