23.01.2017 1838

В Laravel 5.4 включено два новых middleware.

Релиз Laravel 5.4 должен состояться на следующей неделе. Он уже включает в себя множество фич, одни из которых TrimString и ConvertEmptyStringToNull.

TrimString middleware

Как уже понятно из названия Trim Strings middleware автоматически подрезает запрашиваемые данные, поэтому вам не стоит беспокоиться, если кто-нибудь случайно добавит отступ в поле формы.

К примеру, вы подписаны на рассылку, для которой необходим email. Если ранее кто-либо добавлял лишний пробел, то происходило следующее:

dd(request('email'));
// 'demo@example.org '

Теперь же добавляем TrimStrings middleware в App/Kernel.php:

protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\TrimStrings::class,

Результат:

dd(request('email'));
// 'demo@example.org'

Конвертация пустой строки в Null

На пару с Trim Strings Middleware, добавлен ConvertEmptyStringsToNull, который делает практически тоже самое. Приведем пример формы с обязательными полями, относящимися к nullable столбцам в базе данных.

Допустим у вас есть поле vat, чтобы пользователи могли ввести свои данные.

Если предварительно оставить его не заполненным, то он вернет пустую строку:

dd(request('vat'));
// ''

Используя ConvertEmptyStringsToNull middleware строка будет null:

dd(request('vat'));
// null

Зацените новые фичи, добавленные в этот релиз на странице Laravel 5.4, а также присоединяйтесь к newsletter, чтобы не пропустить новые статьи.

Статью перевел timurziev. Оригинал на Laravel-news.com доступен по ссылке.

Возможно, вам будет интересно также почитать: