laravelroles / rolespermissions
Roles and Permissions for Laravel Project
Installs: 44
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Language:Blade
pkg:composer/laravelroles/rolespermissions
README
Technologies
- Laravel
- Tailwind
Installation
- In the terminal:
composer require laravelroles/rolespermissions
- Register service provider in file /bootstrap/providers.php
return [ ... Laravelroles\Rolespermissions\RolespermissionsServiceProvider::class, ];
- Register package middleware in bootstrap/app.php
->withMiddleware(function (Middleware $middleware): void { $middleware->alias([ 'bindings' => SubstituteBindings::class, 'permissions.required' => PermissionsRequiredMiddleware::class ]); })
- In terminal:
php artisan vendor:publish --provider="Laravelroles\Rolespermissions\RolespermissionsServiceProvider"
- In terminal:
php artisan migrate
- In terminal:
composer dump-autoload
- In terminal:
php artisan laravelroles:seeder
- Class App\Models\User extends Laravelroles\Rolespermissions\Models\User
use Laravelroles\Rolespermissions\Models\User as BaseUser; class User extends BaseUser { }
-
Set localization in config/app.php - bg or en
-
Log in main program with example user test@test.bg and password test
Middleware
Add attribute to the middleware name
Route::resource('salaries', 'SalaryController')->middleware('permissions.required:user_id');
Interfaces
- Users
- Roles
- Permissions
Blade directives
- path($permissionName) - Filters records by condition if the subject (the current user who interacts with the system) is authorized to access the permission $permissionName Example:
@path('posts.edit')
...
@endpath
- owns($attributeValue) - Filters records by condition if the subject's id is equal to $attributeValue Example:
@owns($attributeValue)
...
@endowns
- has($attributeValue, $permissionName) - Filters records by condition if the subject's id is equal to $attributeValue OR the user is authorized to access the permission $permissionName
Example:
@has($posts->author_id, 'posts.edit') ... @endhas












