Релиз 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 доступен по ссылке.