Download the PHP package trunow/rpac without Composer
On this page you can find all versions of the php package trunow/rpac. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package rpac
Short Description Roles/Permissions Access Control (Rpac) Laravel package
License MIT
Informations about the package rpac
Roles/Permissions Access Control [RPAC] Laravel Package
Installation
Composer
Pull this package in through Composer (file composer.json
)...
...and run this command inside your terminal.
composer update
OR require this package
composer require trunow/rpac:dev-master
Service Provider
Add the package to your application service providers in config/app.php
file.
Config File And Migrations
Publish the package config file and migrations to your application. Run these commands inside your terminal.
php artisan vendor:publish --provider="Trunow\Rpac\RpacServiceProvider"
And also run migrations.
php artisan migrate
This uses the default users table which is in Laravel. You should already have the migration file for the users table available and migrated.
Rpacable Trait and $with = [roles]
Include Rpacable
trait inside your User
model.
And set protected property $with = ['roles'] (for autoloading roles with User's model).
protected $with = ['roles'];
Create Su/Admin User
Run command, example rpac su:1
or rpac admin:[email protected]
or role:[email protected]:pa$$w0r5
.
php artisan rpac su:[email protected]
(:
And go to
your-domain.com/admin-rpac
:)
Usage
Creating Policy
Create empty policy class extends RpPolicy
for your model.
TODO
Creating Roles
Attaching And Detaching Roles
It's standart. There is BelongsToMany
relationship between User
and Role
model.
Checking For Roles
You can now check if the user has required role.
You can also do this:
And of course, there is a way to check for multiple roles:
Creating Permissions
It's very simple thanks to Permission
model.
Attaching And Detaching Permissions
You can attach permissions to a role (and of course detach them as well).
Checking For Permissions
TODO
Entity Check
Let's say you have an article and you want to edit it.
Blade Extensions
There are four Blade extensions. Basically, it is replacement for classic if statements.
Middleware
This package comes with VerifyRole
middleware. You can easily protect your routes.
Config File
You can change connection for models, models path and there is also a handy pretend feature. Have a look at config file for more information.
License
This package is free software distributed under the terms of the MIT license.