Вы хотите создать современное веб-приложение на Laravel 8, включающее аутентификацию пользователей? Не смотрите дальше! В этой статье мы углубимся в мощную комбинацию Laravel 8, Auth Scaffolding и Inertia Jetstream, чтобы упростить процесс. Независимо от того, являетесь ли вы опытным разработчиком Laravel или только начинаете, это руководство познакомит вас с основными методами и предоставит примеры кода, которые помогут вам быстро приступить к работе.
Прежде чем мы начнем, убедитесь, что в вашей системе установлены Laravel 8 и Composer. Когда вы будете готовы, приступим!
-
Установка Laravel Jetstream
Для начала нам необходимо установить Laravel Jetstream, который обеспечивает основу для системы аутентификации. Откройте терминал и выполните следующую команду:composer require laravel/jetstream
-
Создание нового проекта Laravel
Далее давайте создадим новый проект Laravel, используя пресет Jetstream. Запустите следующую команду в своем терминале:laravel new myproject
После создания проекта перейдите в каталог проекта:
cd myproject
- Установка каркаса Jetstream
Теперь давайте установим каркас Jetstream в наш проект Laravel:php artisan jetstream:install inertia
Эта команда установит необходимые зависимости и настроит систему аутентификации, используя Inertia в качестве внешнего стека.
-
Выполнение миграции
Чтобы создать необходимые таблицы базы данных для аутентификации, выполните следующую команду:php artisan migrate
-
Маршруты аутентификации
Laravel Jetstream автоматически генерирует маршруты, необходимые для аутентификации. Чтобы обеспечить доступ к определенным маршрутам только прошедшим проверку подлинности пользователям, вы можете использовать промежуточное программное обеспечениеauth
. Например:Route::middleware(['auth'])->group(function () { // Your authenticated routes here });
-
Регистрация пользователя
В Jetstream регистрация пользователя так же проста, как и доступ к регистрационной форме. Вы можете включить ссылку на регистрационную форму в пользовательский интерфейс вашего приложения или использовать следующий маршрут:Route::get('/register', [RegisterController::class, 'create'])->name('register');
-
Вход пользователя
Для функции входа пользователя Jetstream предоставляет удобную форму входа, которую вы можете включить в пользовательский интерфейс вашего приложения. Вы можете получить доступ к форме входа по следующему маршруту:Route::get('/login', [AuthenticatedSessionController::class, 'create'])->name('login');
-
Выход пользователя
Чтобы пользователи могли выйти из системы, Jetstream предоставляет маршрут выхода, на который вы можете ссылаться в своем пользовательском интерфейсе:<form method="POST" action="{{ route('logout') }}"> @csrf <x-jet-dropdown-link href="{{ route('logout') }}" onclick="event.preventDefault(); this.closest('form').submit();"> {{ __('Logout') }} </x-jet-dropdown-link> </form>
Эти методы охватывают основы аутентификации Laravel 8 с использованием Inertia Jetstream. Выполнив эти шаги, вы мгновенно получите полнофункциональную систему аутентификации с возможностью регистрации пользователей, входа в систему и выхода из системы.
Не забудьте изучить документацию Laravel, чтобы узнать о более продвинутых функциях и возможностях настройки. Приятного кодирования!