Laravel World

  1. Релиз Laravel Slack AlertsКоманда Spatie выпустила новый пакет для отправки уведомлений в Slack.SlackAlert::to('marketing')->message('We got a new subscriber.');

    Релиз Laravel Slack Alerts
    Команда Spatie выпустила новый пакет для отправки уведомлений в Slack.

    SlackAlert::to('marketing')->message('We got a new subscriber.');
    
    
    https://github.com/spatie/laravel-slack-alerts GitHub - spatie/laravel-slack-alerts: Quickly send a message to Slack

    • 👍33
  2. Laravel 9 — Что нового?Новая версия фреймворка выйдет 8 февраля 2022 года и будет являться LTS (релиз с долгосрочной поддержкой), то есть основная поддержка будет осуществляться в течении 2 лет, а поддержка безопасности в течении 3 лет. Релиз содержит следующие нововведения и улучшения: поддержка компонентов Symfony 6, Symfony Mailer, Flysystem 3, улучшенный вывод route:list, драйвера Laravel Scout, новый синтаксис аксессор/мутатор Eloquent и различных других исправлений ошибок и улучшений удобства использования. Рассмотрим подробнее каждое нововведение:

    Laravel 9 — Что нового?

    Новая версия фреймворка выйдет 8 февраля 2022 года и будет являться LTS (релиз с долгосрочной поддержкой), то есть основная поддержка будет осуществляться в течении 2 лет, а поддержка безопасности в течении 3 лет.

    Релиз содержит следующие нововведения и улучшения: поддержка компонентов Symfony 6, Symfony Mailer, Flysystem 3, улучшенный вывод route:list, драйвера Laravel Scout, новый синтаксис аксессор/мутатор Eloquent и различных других исправлений ошибок и улучшений удобства использования.

    Рассмотрим подробнее каждое нововведение:
    https://laravel.demiart.ru/laravel-9-whats-new/

    • 👍83
    • 👎1
  3. Релиз Laravel 8.80

    Релиз Laravel 8.80
    https://github.com/laravel/framework/releases/tag/v8.80.0

    Из интересного:

    — Возможность указывать общий Контроллер для группы маршрутов:
    Route::controller(OrderController::class)->group(function () {
      Route::get('/orders/{id}', 'show');
      Route::post('/orders', 'store');
    });
    
    
    —Новый метод сортировки ключей по колбэку sortKeysUsing():
    $sorted = $collection->sortKeysUsing('strnatcasecmp');
    
    
    — Метод Blade::render() для рендера строк:
    Blade::render('Hello, {{ $name }}', ['name' => 'Claire']);
    // Returns 'Hello, Claire'
    
    Blade::render('@if($foo) Foo @else Bar @endif', ['foo' => true]);
    // Returns 'Foo '

    • 👍64
  4. Вышла обновленная версия Ignition, которая будет дефолтной страницей ошибок в Laravel 9. Но вы можете уже сейчас установить её для своих проектов на Laravel 8.

    Вышла обновленная версия Ignition, которая будет дефолтной страницей ошибок в Laravel 9. Но вы можете уже сейчас установить её для своих проектов на Laravel 8.
    https://freek.dev/2168-ignition-the-most-beautiful-error-page-for-laravel-and-php-got-a-major-redesign

    • 👍21
  5. В Laravel 8.79 добавят полнотекстовой поиск для MySQL и PostgreSQL. Разумеется предварительно нужно создать соответствующие индексы.

    В Laravel 8.79 добавят полнотекстовой поиск для MySQL и PostgreSQL. Разумеется предварительно нужно создать соответствующие индексы.

    • 👍107
  6. В Laravel есть несколько интересных скрытых трейтов. Например Conditionable, который позволяет использовать методы when и unless в вашем классе. Методы принимают value, callback и default.Когда условие when истинно, то будет запущен коллбек и возвращён его результат. Если ложь — то вернёт $this или дефолтное значение, если оно указано.

    В Laravel есть несколько интересных скрытых трейтов. Например Conditionable, который позволяет использовать методы when и unless в вашем классе. Методы принимают value, callback и default.
    Когда условие when истинно, то будет запущен коллбек и возвращён его результат. Если ложь — то вернёт $this или дефолтное значение, если оно указано.

    • 👍100
    • 👎3
  7. Конструктор запросов имеет метод explain(), который позволяет мгновенно получить план выполнения запроса. Полезно при отладке медленных запросов.

    Конструктор запросов имеет метод explain(), который позволяет мгновенно получить план выполнения запроса. Полезно при отладке медленных запросов.

    • 👍121
  8. Создавайте столько угодно дисков. И вместо Storage::get('/invoices/1.jpg') используйте Storage::disk('invoices')->get('1.jpg');Наглядно и удобно в поддержке.

    Создавайте столько угодно дисков. И вместо
    Storage::get('/invoices/1.jpg')
    используйте
    Storage::disk('invoices')->get('1.jpg');
    Наглядно и удобно в поддержке.

    • 👍44
    • 👎6
  9. Если вам нужно промаппить постраничные данные, то используйте метод through, а не map. Map удалит экземпляр пагинации и вернёт коллекцию, в товремя как through работает с самими данными.

    Если вам нужно промаппить постраничные данные, то используйте метод through, а не map. Map удалит экземпляр пагинации и вернёт коллекцию, в то
    время как through работает с самими данными.

    • 👍16