https://github.com/mimaxuz/role-manager
Simple Laravel roles and permissions for Laravel applications
https://github.com/mimaxuz/role-manager
database laravel laravel-package laravel-passport laravel-roles library package php php7 role sql
Last synced: about 1 month ago
JSON representation
Simple Laravel roles and permissions for Laravel applications
- Host: GitHub
- URL: https://github.com/mimaxuz/role-manager
- Owner: MIMAXUZ
- License: mit
- Created: 2020-06-19T06:42:19.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-08-16T11:16:30.000Z (9 months ago)
- Last Synced: 2025-02-20T05:17:18.362Z (2 months ago)
- Topics: database, laravel, laravel-package, laravel-passport, laravel-roles, library, package, php, php7, role, sql
- Language: PHP
- Homepage:
- Size: 20.5 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Simple Role Manager
An easy and flexible Laravel authorization and roles permission management[](https://packagist.org/packages/mimaxuz/role-manager)
## About
In many projects, you have to work with roles and permissions. Many packages are large and not all features are needed. That’s why I tried to create a small but effective package for projects. This package can be attached to any project. Convenient and efficient. It is very easy to use and can be used after installation.## Installation
However, if you are not using Homestead, you will need to make sure your server meets the following requirements:
- PHP >= 7.2.5
- BCMath PHP Extension
- Ctype PHP Extension
- Fileinfo PHP extension
- JSON PHP Extension
- Mbstring PHP Extension
- OpenSSL PHP Extension
- PDO PHP Extension
- Tokenizer PHP Extension
- XML PHP Extension### Install package via ```composer```
```
$ composer require mimaxuz/role-manager
```
After that, you need to run the migration files:
```
$ php artisan migrate
```
## How to use package migrations
This package includes the following tables. All tables have a relational line, and the relationships are in cascade.
## How to activate package ?
This package contains traits and must be activated within the ```App\Users``` model. To do this, follow the steps below.
1. Open ```App\User``` Model and Copy the following codes
```
//For importing traits form package
Use MIMAXUZ\LRoles\Traits\HasPermissions;
...class User extends Authenticatable
{
use Notifiable;
//Import The Trait
use HasPermissions;
...
}
```### Assign a route to a role
Besides middleware and other route settings, you can use a `role` key in your route groups to assign a role to your routes.
You can use route groups as follows.
```Route::group(['middleware' => 'role:admin'], function () {
//With controller
Route::get('/a', 'HomeController@dashboard');
//Inside functions
Route::get('/admin', function () {
return 'Welcome Admin';
});
});
```
### How to use roles inside `Blade` ?
If you want to use it in `Blade Templates`, use the following.
```
@role('admin')
Only Admin roles user can access to it
@endrole
```
### Conclusion
This package may have issuses and bugs. Don't forget to report if an error or problem occurs!### License
Standt MIT License