Download the PHP package bbs-lab/nova-permission without Composer
On this page you can find all versions of the php package bbs-lab/nova-permission. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package nova-permission
Laravel Nova permission tool
Based on spatie/permission, this tool gives you ability to manage roles and permission. The tool provides permission builder.
Contents
- Installation
- Usage
- Generate permissions
- Protect resources
- Super admin
- Changelog
- Security
- Contributing
- Credits
- License
Installation
You can install the nova tool in to a Laravel app that uses Nova via composer:
The service provider will automatically get registered. Or you may manually add the service provider in your config/app.php
file:
You should publish the migrations with:
You can publish the config files with:
This will publish config/permission.php
and config/nova-permission.php
files with the following contents:
After the migration has been published you can create the role- and permission-tables by running the migrations:
Usage
You must register the tool with Nova. This is typically done in the tools
method of the NovaServiceProvider
:
Generate permissions
The tool allow to generate resource permissions. Your resource must implement BBSLab\NovaPermission\Contracts\HasAbilities
and define the public static $permissionsForAbilities
variable:
This configuration will generate the following permission:
You may generate permission from the permission builder tool with the Generate permissions
button or the Artisan command:
Protect resources
You can use Laravel policies as usual:
Sometimes you may want to protect a particular resource. First the model must implement the BBSLab\NovaPermission\Contracts\HasAuthorizations
:
You need to add the resource in the config/nova-permission.php
:
You can now create a permission attached on to a specific post:
And update the post policy:
Super admin
You may want to create role as super admin. You can do that using the override_permission
attribute.
You may prevent override_permission
attribute modification by using the BBSLab\NovaPermission\Resources\Role::canSeeOverridePermmission
method:
Changelog
Please see CHANGELOG for more information what has changed recently.
Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Contributing
Please see CONTRIBUTING for details.
Credits
- Mikaël Popowicz
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of nova-permission with dependencies
guzzlehttp/guzzle Version ~6.0 || ^7.0
illuminate/notifications Version ~5.5 || ~6.0 || ~7.0 || ~8.0
illuminate/support Version ~5.5 || ~6.0 || ~7.0 || ~8.0
spatie/laravel-permission Version ^3.0