Замена Laravel UI на Laravel Fortify | OTUS

Курсы

Программирование
iOS Developer. Basic
-23%
Python Developer. Professional
-13%
Golang Developer. Professional
-17%
Python Developer. Basic
-16%
iOS Developer. Professional
-13%
C# ASP.NET Core разработчик
-18%
Unity Game Developer. Professional
-11%
React.js Developer
-12%
Android Developer. Professional
-7%
Software Architect
-12%
C++ Developer. Professional
-8%
Разработчик C#
-8%
Backend-разработчик на PHP
-8%
Архитектура и шаблоны проектирования
-12%
Программист С Разработчик на Spring Framework MS SQL Server Developer AWS для разработчиков Cloud Solution Architecture Разработчик голосовых ассистентов и чат-ботов Vue.js разработчик VOIP инженер Нереляционные базы данных Супер - интенсив по паттернам проектирования Супер-практикум по использованию и настройке GIT IoT-разработчик Advanced Fullstack JavaScript developer Супер-интенсив Azure
Инфраструктура
Мониторинг и логирование: Zabbix, Prometheus, ELK
-17%
DevOps практики и инструменты
-18%
Архитектор сетей
-21%
Инфраструктурная платформа на основе Kubernetes
-22%
Супер-интенсив «IaC Ansible»
-16%
Супер-интенсив по управлению миграциями (DBVC)
-16%
Administrator Linux. Professional
-5%
Administrator Linux.Basic
-10%
Супер-интенсив «ELK»
-10%
Базы данных Сетевой инженер AWS для разработчиков Cloud Solution Architecture Разработчик голосовых ассистентов и чат-ботов Внедрение и работа в DevSecOps Супер-практикум по работе с протоколом BGP Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Супер-интенсив «СУБД в высоконагруженных системах»
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

Замена Laravel UI на Laravel Fortify

В этой статье вы узнаете, каким образом можно заменить функциональность устаревшего пакета laravel/ui на новый пакет Laravel Fortify.

Проблема с Jetstream заключается в том, что зачастую нам нужен просто каркас аутентификации без Livewire и Inertia.js. С одной стороны, работать с Inertia либо Livewire, в целом, неплохо, с другой — иногда нужна просто аутентификация. Конечно, laravel/ui мы всё ещё можем использовать в Laravel 8, однако хочется восстановить эту функциональность без данного пакета. В этой статье будут описаны шаги по достижению аналогичного функционала посредством Laravel Fortify.

Настраиваем проект:

1) laravel new laravel-fortify-demo 2) composer require laravel/fortify 3) php artisan vendor:publish --provider="Laravel\Fortify\FortifyServiceProvider" 4) настройка БД 5) php artisan migrate

Настраиваем Fortify

Открываем config/app.php и регистрируем сервис-провайдера Fortify:

App\Providers\FortifyServiceProvider::class,

Потом открываем config/fortify.php и обновляем свой массив features:

'features' => [
Features::registration(),
Features::resetPasswords(),
],

Далее надо рассказать Fortify, где конкретно располагаются наши шаблоны аутентификации.

Открываем app/Providers/FortifyServiceProvider.php и в метод boot добавляем:

1-1801-ce1086.png

Создаём шаблоны

Нам потребуются четыре blade-файла: • resources/views/auth/forgot-password.blade.php; • resources/views/auth/login.blade.php; • resources/views/auth/register.blade.php; • resources/views/auth/reset-password.blade.php.

Их можно «позаимствовать» из пакета laravel/ui, также вы можете взять их тут.

Защищаем страницы

Теперь следует защитить наши маршруты. Открываем routes/web.php и используем мидлвар auth:

2-1801-19322f.png

Итог

Итак, нам удалось воссоздать функционал базовой регистрации, логина и сброса пароля. При этом стоит отметить, что Fortify имеет интересную функцию проверки e-mail (если это вас интересует, изучите документацию пакета. Также вам может быть полезна ссылка на GitHub.

По материалам статьи «Using Laravel Fortify to restore laravel/ui functionality».

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться