Статті за тегом «Laravel»
Статті, новини, туторіали та переклади від учасників спільноти
`prepareForValidation()` - чистимо дані до валідації
Телефон приходить як "(123) 456-7890", а в БД потрібен "1234567890".
Санітизація в контролері? Це вже запізно.
prepareForValidation() змінює дані запиту до запуску правил.
Коли корисно:
- Нормалізація телефону
- Прибирання пробілів
- Конвертація типів
- Додавання обчислюваних полів
Важливо:
Виконується до валідації — ідеально для нормалізації.
Порада: merge() додає/оновлює поля, replace() повністю замінює масив даних.
protected function prepareForValidation()
{
$this->merge([
'phone' => preg_replace('/[^0-9]/', '', $this->phone),
'slug' => Str::slug($this->title),
'price' => (float) $this->price,
'name' => trim($this->name),
'email' => strtolower(trim($this->email)),
]);
}
Порядок авторизації та прив’язки моделей у Laravel: чому замість 403 приходить 404
Чому користувач без прав отримує 404 замість 403 на маршрутах із route model binding, як це пов’язано з пріоритетом middleware SubstituteBindings та Authorize і як це виправити за допомогою PermissionMiddleware.
Стрімінг відповідей ШІ з Laravel до React: досвід команди There There
Freek Van der Herten показує, як у Spatie стрімлять відповіді агента на базі Laravel AI SDK у React: генератор на сервері, NDJSON у відповіді та невеликий буферний цикл на клієнті - близько сотні рядків коду.
`exclude()` - прибираємо поля з валідованих даних
У формі є CSRF-токен та допоміжні поля. Ви не хочете, щоб вони потрапили у validated().
exclude_if, exclude_unless прибирають поля умовно.
Коли корисно:
- Прибрати UI-only поля
- Виключити поля залежно від ролі
- Не логувати чутливі поля
- Тримати валідовані дані “чистими”
Доступні правила:
exclude— завжди прибираєexclude_if— прибирає, якщо умова істиннаexclude_unless— прибирає, якщо умова хибнаexclude_with— прибирає, якщо інше поле присутнє
Порада: краще за ручний unset() після валідації.
public function rules()
{
return [
'name' => 'required',
'admin_notes' => 'exclude', // не потрапить у validated()
'is_admin' => 'exclude_unless:user.role,admin',
'card_number' => 'exclude_if:payment_method,cash',
'paypal_email' => 'exclude_if:payment_method,card',
];
}
Простий векторний пошук подібності для Laravel: драйвер Pgvector для Scout
Бен Бьюрстром створив драйвер Pgvector для Laravel Scout, який автоматично підтримує актуальність векторних ембедингів і дає змогу шукати дані за змістом, а не лише за ключовими словами.
Reservable-моделі в Laravel: як уникнути дублювання обробки за допомогою атомарних блокувань
Аарон Френсіс показує, як за допомогою трейта Reservable та атомарних блокувань кешу Laravel резервувати Eloquent-моделі, уникати повторної обробки та не «штурмувати» зовнішні сервіси при збоях.
WhenMounted і BigInt-пропси в Inertia.js v3.8
Inertia.js v3.8.0 додає компонент WhenMounted для коду, що працює лише в браузері під час SSR, опційну підтримку великих цілих чисел як нативних BigInt та низку виправлень для Form, оптимістичних оновлень і історії навігації.
Велике оновлення тестів і питань для співбесід: 75 тестів, 2791 питання і ваш прогрес
Тести й питання для співбесід на laravelukraine.com ми переробили майже з нуля: 75 тестів у 14 технологіях, 2791 питання з поясненнями, 1740 питань для співбесід у 143 темах. З'явилися підбірки за темами, розбір результату за темами, збереження спроби і сторінка «Моя підготовка», де видно ваш прогрес.
Матеріали за темою «Laravel»: усе, що ми писали про це українською. Нижче - суміжні теми, якщо шукаєте ширше.
Зараз опубліковано 208 матеріалів від 3 авторів. Останній матеріал - 30 жовтня 2026.
- Категорії
- Новини 183 Tips & Tricks 74 Посібники 38 Нотатки 20 Переклади 7
- Теми
- Laravel 208 PHP 139 релізи 55 Eloquent 54 Laravel 13 43 Бекенд 41 безпека 37 Патерни проєктування 34 Продуктивність 30 пакети 26