Атрибути запиту HTTP-клієнта в Laravel 12.42

4
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 29 січня, 2026
Laravel 12.42 приніс кілька захоплюючих нововведень, таких як атрибути запитів HTTP-клієнта та підтримка Enum у замінах перекладача. Чи готові ви дізнатися більше про ці зміни та як вони можуть спростити вашу роботу? Читайте далі!

Команда Laravel випустила версію 12.42, яка включає атрибути запитів HTTP-клієнта, підтримку Enums у замінах Translator, методи перевірки індексів у схемах бази даних та багато іншого.

# Атрибути запитів HTTP-клієнта

Люк Кузміш запропонував метод withAttributes() для визначення атрибутів даних на екземплярі PendingRequest. Ви можете потім отримати їх за допомогою методу attributes():

$response = Http::withAttributes(['name' => 'first'])
    ->get('https://example.com/test');

$response->attributes(); // ['name' => 'first']

Деталі реалізації можна знайти у Запиті на злиття #58038.

# Підтримка Enums у замінах Translator

Хосейн Хосні представив оновлення, яке підтримує Enums у замінах Translator:

$t = new Translator($loader, 'en');
$t->get('string_backed_enum', ['month' => Month::February]);
// Laravel 12 був випущений у :month 2025
// Laravel 12 був випущений у лютому 2025

Деталі реалізації доступні у Запиті на злиття #58048.

# Перевірка індексів у схемі бази даних

Джек Бейліс додав методи whenTableHasIndex та whenTableDoesntHaveIndex для виконання коду в залежності від наявності індексу в таблиці:

use Illuminate\Support\Facades\Schema;

// До
public function up(): void
{
    if (! Schema::hasIndex('product', 'name')) {
        Schema::table('product', function (Blueprint $table) {
            $table->index('name', 'index_name');
        });
    }
}

// Після
public function up(): void
{
    Schema::whenTableHasIndex('product', 'name', function (Blueprint $table) {
        $table->index('name', 'index_name');
    });

    // Ви також можете вказати тип індексу...
    Schema::whenTableDoesntHaveIndex('product', 'name', function (Blueprint $table) {
        $table->index('name', 'index_name');
    }, 'unique');
}

Деталі реалізації знайдете у Запиті на злиття #58005.

# Зауваження до випуску

Повний список нових функцій та оновлень дивіться нижче, а також порівняння версій 12.41.0 та 12.42.0 на GitHub. Наступні зауваження до випуску взяті прямо з чекліста:

# v12.42.0

Популярні

Logomark Logotype

Випущено Livewire 3.6

Laravel Livewire випустив нову версію 3.6, яка приносить з собою цікаві HTML-директиви для управління видимістю DOM-елементів і JavaScript-діями. Досліджуйте нові можливості Livewire, що допоможуть вам створити ще більш інтерактивні користувацькі інтерфейси!

Logomark Logotype

Створення CLI-додатка за допомогою Laravel та Docker

Зазирніть у світ Laravel, де потужний CLI-фреймворк відкриває нові можливості для розробки командного інтерфейсу. Дізнайтеся, як створити просту утиліту для перевірки акцій, яка працює з Docker, та які переваги це може принести у вашому проєкті!

Logomark Logotype

Журнал аудиту в Laravel

Хочете забезпечити повну прозорість у своїх Laravel-додатках? Пакет Laravel Audit Log допоможе вам детально відстежувати всі зміни моделей Eloquent та відповідати вимогам регуляторів. Читайте далі, щоб дізнатися, як цей потужний інструмент може підвищити надійність вашого проєкту