iutrace / laravel-abilities
Easily add abilities business logic to your models
Requires
- php: ^7.3|^8.0
- illuminate/support: ^6.0|^7.0|^8.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.2
- orchestra/testbench: ^4.5|^5.0|^6.0
- phpunit/phpunit: ^8.0|^9.0
This package is auto-updated.
Last update: 2025-02-05 04:11:26 UTC
README
A convenient way to encapsulate model conditions business logic
Laravel Gates are an excellent way to separate logic of access and permissions from models, but if we need to separate only models conditions not related to users (ex: if is valid to Publish a Post at certain state regardless of user)
This package adds a layer on top of laravel Gates, so first "ability" validity is checked then user access and permission is checked though normal laravel Gates if present.
Also, this package adds abilities and policies attributes to your models through HasHabilities
trait, useful if you need available "actions" at frontend.
Installation
$ composer require iutrace/laravel-abilities