• Час читання ~1 хв
  • 09.07.2022

Laravel Ban - це пакет, який спрощує блокування та заборону моделей Eloquent. За допомогою цього пакета можна зробити модель «банною» за лічені хвилини.

Варіант використання цього пакета виходить за рамки User моделі; ви можете додати концепцію заборони до будь-якої моделі Eloquent. До основних можливостей цього пакету можна віднести:

  • Модель може мати безліч заборон.
  • Зняті заборони, що зберігаються в історії як м'яко видалені записи.
  • Більша частина логіки обробляється BanService.
  • Має проміжне програмне забезпечення для запобігання забороненого доступу користувачів до маршруту.
  • Варіант використання не обмежується моделлю користувача, будь-яка модель Eloquent може бути заборонена.
  • Події, що стріляють по моделях, забороняють і розбанюють.
  • Призначений для роботи з моделями Laravel Eloquent.
  • Має підтримку Laravel Nova.
  • Використання контрактів для збереження високих можливостей налаштування.
  • Використання рис для отримання функціональності з коробки.

Пакет має приємний API, який робить заборону моделі простою:

$user->ban();

$user->ban([
    'comment' => 'Enjoy your ban!',
]);
// A ban that has a ban expiry date
$user->ban([
    'expired_at' => '+1 month',
]);
// Remove a ban
$user->unban();

// Boolean checks
$user->isBanned();
$user->isNotBanned();
$ban->isTemporary();

пакет також забезпечує приємні зручності, такі як проміжне програмне забезпечення, події, області та автоматичне застосування областей до моделі.

Ви можете дізнатися більше про цей пакет, отримати повні інструкції зі встановлення та переглянути вихідний код на GitHub.

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

Про мене

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

Про автора CrazyBoy49z
WORK EXPERIENCE
Контакти
Ukraine, Lutsk
+380979856297