Download the PHP package filippo-toso/resource-permissions without Composer
On this page you can find all versions of the php package filippo-toso/resource-permissions. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download filippo-toso/resource-permissions
More information about filippo-toso/resource-permissions
Files in filippo-toso/resource-permissions
Package resource-permissions
Short Description An highly opinionated polymorphic role / permission package
License MIT
Homepage https://github.com/filippotoso/resource-permissions
Informations about the package resource-permissions
An highly opinionated polymorphic role / permission package
This is where your description should go. Limit it to a paragraph or two. Consider adding a small example.
Installation
You can install the package via composer:
You can publish and run the migrations with:
You can publish the config file with:
This is the contents of the published config file:
Usage
Add the HasRolesAndPermissions
trait to your User model:
Now you can create a user, a permission, and a role. Then assign the permission to the role and assign the role to the user.
You can also assign permissions directly to the user:
Both hasRole()
and hasPermission()
methods accept as first parameter:
- a role/permission Model instance
- the numeric key of the role/permission Model instance
- a string with the role/permission name
- a BackednEnum with the role/permission name
- an array with any of the above
When you assign a role or a permission to a user, you can pass a second $resource
parameter.
This is the uniqueness of this package.
You can assign a role or a permission to a user relative to a specific Eloquent model.
For instance a user can be assigned the manager
role of an Organization and the owner
role of a project.
This second parameter can be:
- a Model instance
- a ResourceData object (an internal representation of a resource)
- an array with a single element where the key is the Model class and the value is the numeric key of the model
- an array with any of the above
Testing
Changelog
Please see CHANGELOG for more information on what has changed recently.
Credits
License
The MIT License (MIT). Please see License File for more information.
All versions of resource-permissions with dependencies
spatie/laravel-package-tools Version ^1.16
illuminate/contracts Version ^10.0||^11.0