Елегантно керуйте контекстними даними за допомогою Context Facade в Laravel, тепер з можливістю використання трейту Conditionable. Ця потужна комбінація дозволяє легко застосовувати умовну логіку при обміні даними в додатку.
Context::when(
auth()->user()->isAdmin(),
fn ($context) => $context->add('user', ['key' => 'other data', ...auth()->user()]),
fn ($context) => $context->add('user', auth()->user()),
);
У наведеному коді показано, як умовно додавати різні дані користувача в контекст на основі його адміністративного статусу. Це створює більш структурований підхід до специфічної поведінки контексту.
// Додаємо різні фічі в залежності від середовища
Context::when(
app()->environment('production'),
fn ($context) => $context->add('features', ['beta' => false]),
fn ($context) => $context->add('features', ['beta' => true])
);
// Додаємо дозволи користувача на основі ролі
Context::when(
auth()->user()->isAdmin(),
fn ($context) => $context->add('permissions', 'all'),
fn ($context) => $context->add('permissions', 'limited')
);
З методами, такими як when та unless, управління контекстом стає зрозумілішим і легшим для обслуговування. Цей підхід особливо важливий під час налаштування конфігурацій на основі ролей, специфічних для середовища чи функціоналу у вашому додатку. Консолідуючи умовну логіку безпосередньо в управлінні контекстом, ви зменшуєте кількість розкиданих операторів if/else, створюючи більш зв'язний і самодокументований код.
Досліджуйте нові можливості локалізації вашого Laravel-додатку з пакунками, які використовують штучний інтелект, такими як ChatGPT та Claude. Які рішення можуть спростити ваш процес перекладу та зробити його більш точним? Читайте далі, щоб дізнатися більше!
Чи стикалися ви з помилкою «SQLSTATE[HY000] [2002] Connection refused» під час налаштування GitHub Actions для вашого додатку на Laravel? У нашій статті ми розглянемо три поширені причини цієї помилки та надамо рішення для їх усунення. Читайте далі, щоб дізнатися, як ваш CI/CD потік може працювати бездоганно!
Вперше у світі Laravel з'являється можливість, яка значно спростить ваше повсякденне програмування завдяки новому пакету Laravel Boost. Читайте статтю, щоб дізнатися, як посилена інтеграція штучного інтелекту може підвищити ефективність вашої роботи та оптимізувати створення проектів у Laravel