Локальні моделі та їх скоупи в Laravel за допомогою атрибута Scope

5
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 04 лютого, 2026
В Laravel 12 ми отримали можливість використовувати новий підхід для визначення локальних скоупів у моделях Eloquent. Дізнайтеся, як новий атрибут #[Scope] спрощує цей процес і зберігає ваші назви методів незмінними

Коли я писав про Laravel 12.4, я пропустив абсолютно новий спосіб написання локальних скоупів у моделях Eloquent 😅. Скільки себе пам'ятаю, скоупи запитів визначалися в моделі шляхом додавання префікса scope до імені публічного методу:

public function scopePopular(Builder $query): void
{
    $query->where('votes', '>', 100);
}
 
User::popular()->orderBy('created_at', 'DESC')->get();

У нових додатках на Laravel 12 все ще можна використовувати методи з префіксом scope* для визначення скоупів моделі, але тепер доступний новий #[Scope] атрибут, який дозволяє зберегти бажане ім'я методу:

use Illuminate\Database\Eloquent\Attributes\Scope;
 
#[Scope]
protected function popular(Builder $query): void
{
    $query->where('votes', '>', 100);
}

Детальніше про скоупи та роботу з Eloquent ви можете дізнатися в документації Laravel. Цю функцію впровадили в Laravel v12.4 — деталі обговорення та реалізації можна знайти у pull request #54450.

Популярні

Logomark Logotype

Що нового в PHP 8.5

PHP 8.5 обіцяє безліч нових можливостей, таких як оператор Pipe, функції `array_first()` та `array_last()`, а також нове розширення URI. Чи готові ви дізнатися, як ці функції можуть спростити вашу розробку? Читайте далі, щоб дізнатися більше про ці захоплюючі нововведення

Logomark Logotype

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

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

Logomark Logotype

Усе, що нам відомо про Livewire 4

Нова версія Livewire 4, представленої Келебом Порзіо на Laracon US 2025, обіцяє значні покращення у швидкості та організації компонентів. Які з інноваційних функцій підкорять ваше серце? Читайте далі, щоб дізнатися більше про те, як Livewire 4 полегшить вашу роботу