Laravel Jetstream是啥?怎麼使用它?

2020-09-21 12:00:26

下面由教學欄目給大家介紹Laravel Jetstream和其使用方法,希望對需要的朋友有所幫助!

Laravel

介紹

Laravel 8 與 Laravel Jetstream 一起於9月8日釋出。

Laravel Jetstream 是 Laravel 的新應用程式擴充套件。Laravel Jetstream 替換了舊版本 Laravel 的舊版 Laravel 身份驗證UI。

在本教學中,我將為您簡要介紹 Laravel Jetstream 以及如何開始使用它。

先決條件

如果要繼續學習,則需要 LEMP 伺服器以及 composer 或最新的Laravel安裝程式。

我將使用 DigitalOcean 進行演示。 如果您還沒有 DigitalOcean 賬號,則可以使用以下引薦連結獲得 $100 的優惠,可以用於部署伺服器和測試指南:

DigitalOcean $100 美元優惠劵

什麼是 Laravel Jetstream

Jetstream為您的新專案提供了一個更好的開始。它包括以下元件:

  • 登入和註冊功能
  • 電子郵件驗證
  • 雙重驗證
  • Session 管理
  • 通過 Laravel Sanctum 提供API支援

Laravel Jetstream 取代了以前版本的 Laravel 身份驗證UI。

Jetstream 使用了 Tailwind CSS ,你可以選擇 Livewire 或者 Inertia 元件。

Laravel Jetstream 是免費的開源軟體。

安裝 Laravel Jetstream

您可以使用 composer 或 Laravel 安裝程式兩種方法安裝 Laravel Jetstream 。

使用 Laravel 安裝程式安裝 Laravel Jetstream

如果您已經有了最新版本的 Laravel 安裝程式,您只需使用 --jet 即可安裝新的laravel Jetstream專案:

laravel new project-name --jet

然後,像往常一樣,請確保執行你的遷移:

php artisan migrate

使用 Composer 來安裝 Laravel Jetstream

如果你更喜歡使用 composer ,則需要像使用其他軟體包一樣在 Laravel 目錄中執行以下命令:

composer require laravel/jetstream

注意:你需要安裝 Laravel 8。否則,以上命令將失敗。

然後,你需要執行 artisan jetstream:install 並指定需使用的棧

  • 如果你要 Livewire 和 Blade 一起使用,請執行:
php artisan jetstream:install livewire
  • 如果你要 Inertia 與 Vue 一起使用,請執行:
php artisan jetstream:install inertia

你也可以新增 --teams 來啟用 Laravel Jetstream 組管理

之後,執行:

npm install && npm run dev

上面的命令將安裝所需的依賴以及構建打包。

最後,請確保執行你的遷移:

php artisan migrate

認證方式

你的新 Jetstream 應用程式提供以下功能開箱即用:

  • 登入表單
  • 雙重驗證
  • 登入檔單
  • 重置密碼
  • 電子郵件驗證

你可以在以下位置找到這些檢視檔案:

resources/views/auth

後端邏輯由 Laravel Fortify 提供支援。

你可以在以下目錄中找到 Fortify 進行操作:

app/Actions/Fortify/

你可以在以下目錄找到 Fortify 設定:

config/fortify.php

fortify.php 組態檔中,你可以進行一些更改,例如啟用和禁用不同的功能,例如:

    'features' => [
        Features::registration(),
        Features::resetPasswords(),
        // Features::emailVerification(),
        Features::updateProfileInformation(),
        Features::updatePasswords(),
        Features::twoFactorAuthentication(),
    ],

個人資料管理

Jetstream 即開即用,提供了使用者個人資料管理功能,該功能允許使用者更新姓名,電子郵件地址和個人資料照片。

使用者個人資料檢視儲存在:

resources/views/profile/update-profile-information-form.blade.php

如果你使用的是 Inertia ,則可以在以下位置找到該檢視:

resources/js/Pages/Profile/UpdateProfileInformationForm.vue

以下檔案處理使用者更新邏輯:

app/Actions/Fortify/UpdateUserProfileInformation.php

如果需要的話,你還可以通過以下位置的 Jetstream 組態檔禁用使用者個人資料圖片:

config/jetstream.php

只需要註釋掉 Features::profilePhotos() 這一行:

    'features' => [
        // Features::profilePhotos(),
        Features::api(),
        // Features::teams(),
    ],

Jetstream 安全管理

Laravel Jetstream 帶有允許使用者更新密碼並登出的功能:

Laravel

而且,讓人意想不到的是, Jetstream 還提供帶有二維條碼的雙重身份驗證,使用者可以直接啟動和禁用:

Laravel

另一個出色的功能是使用者可以登出其他瀏覽器的 Session 對談。

Laravel

Blade 的資原始檔可以在以下位置找到:

resources/views/profile/

如果你使用的是 Inertia ,則可以在以下位置找到它們:

resources/js/Pages/Profile/

Jetstream API

Laravel Jetstream 使用了 Laravel Sanctum 來提供便捷的基於令牌的 API 。

使用 Sanctum ,每個使用者都可以生成具有特定許可權的 API 令牌,例如建立,讀取,更新和刪除。

然後要檢查請求許可權,可以使用以下的 tokenCan 方法:

$request->user()->tokenCan('read');

同樣,你可以在 config/jetstream.php 組態檔中禁用 API 支援。

Jetstream 組

如果你在 Jetstream 使用了 --team ,則你的網站支援組建立和管理。

使用 Jetstream 組功能,每個使用者都可以建立並屬於多個不同的組。

有關 Jetstream 組的更多資訊,您可以檢視官方檔案

結論

Laravel Jetstream 在啟動新專案時為你提供了一個很好的開始!

原文地址:https://devdojo.com/bobbyiliev/what-is-laravel-jetstream-and-how-to-get-started

譯文地址:https://learnku.com/laravel/t/49799

以上就是Laravel Jetstream是啥?怎麼使用它?的詳細內容,更多請關注TW511.COM其它相關文章!