Laravel 12.2 презентує користувацькі стартові набори

0
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 17 березня, 2025
Laravel продовжує радувати розробників новими можливостями у версії 12.2.0! Чи готові ви дізнатися, які інновації, такі як метод ddBody() та підтримка спільнотних стартер-китів, чекали на вас у цьому оновленні

Команда Laravel випустила версію 12.2.0, яка включає новий метод тестування `ddBody()`, підтримку єдиної моделі через `HasManyThrough`, а також можливості для збільшення і зменшення контекстуальних ключів та багато іншого

Окрім випуску 12.2.0, Laravel Installer тепер підтримує стартер-кити спільноти. Цю функцію додав Тоні Мессіас, що спрощує установку стартер-китів за допомогою знайомої команди laravel new

# Підтримка стартер-китів спільноти в `laravel new`

Тепер, створюючи новий проект з одним з офіційних Laravel Starter Kits, команда laravel new підтримує використання стартер-киту спільноти:

laravel new --using statamic/statamic my-statamic-app
laravel new --using tnylea/filamentapp my-filament-app

Щоб дізнатися, які стартер-кити спільноти доступні, Тоні Ліа створив tnylea/laravel-new, де є список проектів і/або стартер-китів, які можна встановити за допомогою Laravel Installer. Важливо провести власне дослідження та ознайомитися з їхнім вихідним кодом

# Метод `ddBody()` у TestResponse

Сем Карре додав метод ddBody() до класу TestResponse, що дозволяє зручно виводити вміст відповіді:

// У функціональному тесті...
$response = $this->get('/example');
$response->ddBody(); // Виводить увесь вміст
// Вивести конкретний JSON ключ
$response->ddBody('title'); // Використовує $this->ddJson('title') під капотом

# Додавання підтримки CanBeOneOfMany до HasOneThrough

Калеб Уайт додав підтримку CanBeOneOfMany до зв’язку HasOneThrough, що дозволяє отримувати єдину модель з більшого зв'язку HasManyThrough:

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasOneThrough;

class Application extends Model
{
    /**
     * Отримати останнє розгортання для програми.
     */
    public function latestDeployment(): HasOneThrough
    {
        return $this->deployments()->one()->latestOfMany();
    }
}

# Методи для збільшення і зменшення контексту

@mattmcdev додав методи increment та decrement до Context, що спрощує облік лічильника (наприклад, кількість виконаних запитів):

Context::increment('uploads'); // 1
Context::increment('uploads'); // 2
Context::increment('uploads', 5); // 7

# Примітки щодо випуску

Повний список нових функцій та оновлень можна знайти нижче, а також різницю між 12.1.0 та 12.2.0 на GitHub. Нижче наведені примітки щодо випуску безпосередньо з змін:

# v12.2.0

Популярні

Logomark Logotype

Налаштування Xdebug з Docker та PHP 8.4 всього за одну хвилину

Встановлення Xdebug може бути складним завданням, але в цій статті ми розкриємо, як швидко та просто налаштувати його за допомогою Docker на прикладі Laravel. Дочитайте до кінця, щоб дізнатися, як за кілька хвилин зробити Xdebug вашим надійним помічником у розробці

Logomark Logotype

Простий пакет RabbitMQ для Laravel

Вам цікаво дізнатися, як спростити інтеграцію RabbitMQ у вашому Laravel-додатку? У нашій статті ми розглянемо пакет Simple RabbitMQ, який дозволяє легко налаштувати багатозʼєднання, публікувати повідомлення та обробляти черги за допомогою простого синтаксису. Читайте далі, щоб дізнатися більше!

Logomark Logotype

Обробка геопросторових даних за допомогою Laravel Magellan

Ви готові відкрити нові горизонти у роботі з геопросторовими даними в Laravel? Дізнайтеся, як за допомогою PostGIS та пакету Laravel-Magellan можна легко зберігати, запитувати та маніпулювати інформацією про розташування, перетворюючи ваші проекти на вражаючі рішення у сфері картографії та геолокації!