Что нового в Laravel 7

laravel

3 марта команда Laravel официально выпустила Laravel 7.0. Как указано в политике поддержки Laravel, это одно из основных обновлений. Хоть этот релиз и не обозначен как LTS, в нём всё равно представлено много новых замечательных функций и исправлений.

Обновление будет предоставлять исправление ошибок до 3 сентября 2020 года, а исправления безопасности в течение 1 года до 3 марта 2021 года.

Что нового в Laravel 7

X Blade

Laravel 7 доработали шаблонизатор Blade, добавив совершенно новые X функции. Этот пакет предоставляет простой способ рендеринга пользовательских компонентов HTML в ваших представлениях Blade.

Ранее вы должны были писать так:

Сейчас, используя x blade, это будет выглядеть так:

Настраиваемые Заглушки

Для того, чтобы настроить файлы-заглушки, вам нужно опубликовать их:

После запуска этой команды в ваш проект будет добавлен новый каталог.

Свободные Операции над Строками

Ранее множество полезных функций для работы со строками предоставлял класс llluminate\Support\str. Laravel 7 теперь предлагает более объектно-ориентированную, свободную библиотеку для работы со строками, построенную поверх этих функций.

Сейчас вы можете создать объект llluminate\Support\Striangable с помощью метода Str::of. Затем к объекту можно применить множество методов для манипулирования строкой:

Zttp для HTTP-клиентов

Zttp — это простая обёртка вокруг Guzzle, задача которой обеспечить максимально приятный опыт разработки при наиболее распространённых сценариях использования. Zttp — новый пакет PHP, который представляет собой обёртку вокруг Guzzle, предназначенную для создания выразительного синтаксиса и упрощения общих случаев использования.

Laravel Airlock

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

Несколько Почтовых Драйверов

Laravel 7 позволяет настроить несколько почтовых драйверов для одного приложения. Каждый почтовый драйвер (mailer), настроенный в конфигурационном файле mail, может иметь свои собственные параметры и даже уникальный “транспорт”, позволяющий вашему приложению использовать различные почтовые службы для отправки определённых электронных сообщений.

Кастомные Eloquent Касты (Custom Eloquent Casts)

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

Поддержка Общего Доступа к Ресурсам (CORS)

Laravel может автоматически отвечать на запросы CORS OPTION с настроенными вами значениями. Все параметры CORS могут быть настроены в вашем конфигурационном файле CORS, а запросы OPTIONS будут автоматически обрабатываться связующим программным обеспечением HandleCors, которое по умолчанию включено в ваш глобальный стек связующего ПО.

Касты Времени в Запросах

Иногда нужно применить преобразование при выполнении запроса, например, при выборе необработанного значения из таблицы. Давайте рассмотрим следующий запрос:

Итоги

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

Я думаю, что это отличный релиз, и с нетерпением жду следующие обновления. Надеюсь, что вы чувствуете то же самое!

Понравилась статья? Поделиться с друзьями:
Добавить комментарий