Три мелкие но полезные плюшки в Laravel 5.2.22

в 7:15, , рубрики: laravel

Совсем недавно состоялся релиз минорной версии 5.2.22 нашего любимого фреймворка Laravel. Наряду с некоторыми небольшими исправлениями, есть несколько новых функций, давайте посмотрим на них.

1. Проверка уникальности массива

Новое правило для проверки, имеет ли массив только уникальные значения:

Validator::make(
      ['products' =>
        ['product_id' => 1, 'quantity' => 5],
        ['product_id' => 1, 'quantity' => 99],
        ['product_id' => 2, 'quantity' => 1],
      ],
      ['products.*.product_id' => 'distinct']
    );

Эта валидация не пройдет, потому что есть несколько products с одинаковым значением product_id.

2. fullUrlWithQuery()

Многим, наверное, приходилось формировать урл на основе текущего, с добавлением GET параметров. Теперь все просто: берете текущий запрос и добавляете массив к нему. Вот пример — скажем, ваш текущий URL является domain.com/catalog из него надо получить новый URL, типа domain.com/catalog?category=1&order=price:

$request->fullUrlWithQuery(['category' => '1', 'order' => 'price']);

Вуаля!

3. Blade: continue и break

Теперь в цикле foreach, можно прерваться или продолжить в зависимости от условия:

@foreach ($products as $product)
      @continue($product->category_id == 999)
      {{ $product->name }}: <b>{{ $product->price }}</b>
      @break($product->price >= 199)
    @endforeach

На сегодня все!
Всем удачи в проектах. Да пребудет с вами сила Laravel.

Автор: Rencom

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js