Вышел Laravel 7

Читать в полной версии →

3 марта редакция Laravel News сообщила о выходе Laravel 7. В новой версии появились удобные и полезные функции, включая Laravel Airlock, ускоренную маршрутизацию, пользовательские свойства casts Eloquent, теги компонентов Blade, свободные операции со строками, новый HTTP-клиент, поддержка CORS и многое другое.

Перед обзором новых возможностей надо заметить, что с шестой версии Laravel следует практике семантического версионирования (semver). Новые мажорные версии фреймворка будут выходить раз в полгода.

Laravel Airlock

Laravel Airlock обеспечивает простую систему аутентификации для одностраничных приложений (SPA), мобильных приложений и простых API. Airlock позволяет каждому пользователю приложения генерировать API-токены для своих аккаунтов. Для этих токенов можно определять возможности и области, которые определяют, какие действия доступны токенам.

Пользовательские свойства casts Eloquent

Laravel поддерживает множество типов casts из коробки. Однако вам могут понадобится собственные типы casts. Задачу можно решить, определив класс, который имплементирует интерфейс CastsAttributes.

Классы, которые имплементируют этот интерфейс, должны определять методы get и set. Метод get преобразовывает необработанное значение из базы данных в приведённое значение. Метод set преобразовывает приведённое значение в необработанное, которое можно сохранить в базе данных.

Метки и улучшения для компонентов Blade

В Laravel 7 компоненты Blade поддерживают рендеринг на основе тегов, управление атрибутами, классы компонентов, инлайн представления компонентов и много другое. Компоненты Blade сильно переработаны, поэтому изучите документацию, чтобы узнать подробности.

HTTP-клиент

Начиная с седьмой версии Laravel предоставляет выразительный и минималистичный API на основе HTTP-клиента Guzzle. Это ускоряет исходящие HTTP-запросы, необходимые для связи с другими приложениями. Zttp, обёртка Laravel для Guzzle, обеспечивает удобную работу с запросами и охватывает все кейсы использования HTTP.

Улучшение скорости кэширования роутов

Laravel 7 поддерживает новый метод сопоставления скомпилированных и кэшированных роутов, которые были кэшированы с помощью команды route:cache Artisan. В больших приложениях, например, в приложениях с 800 и более роутов, данное нововведение повышает скорость запросов в разы. Дополнительные изменения в приложение вносить не нужно.

Больше информации о Laravel 7

В новости перечислены только некоторые из новых возможностей новой версии Laravel. Подробности можно найти в описании релиза, а также в руководстве по переходу на новую версию. Не забудьте о Laravel Shift, который поможет мигрировать без боли.

Как и другие версии, Laravel 7 стал возможен благодаря усилиям сообщества. Над фреймворком работает настоящая команда, распределённая по всему миру. Автор оригинальной публикации выражает всем участникам команды благодарность.

Автор оригинальной новости — Eric L. Barnes.