Download the PHP package baklysystems/laravel-permission without Composer

On this page you can find all versions of the php package baklysystems/laravel-permission. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-permission

Associate users with roles and permissions

Latest Version on Packagist Build Status SensioLabsInsight Quality Score Total Downloads

This package allows to save permissions and roles in a database. It is built upon Laravel's authorization functionality that was introduced in version 5.1.11

Once installed you can do stuff like this:

You can test if a user has a permission with Laravel's default can-function.

If you want a drop-in middleware to check permissions, check out our authorize package: https://github.com/spatie/laravel-authorize

Spatie is webdesign agency in Antwerp, Belgium. You'll find an overview of all our open source projects on our website.

Install

You can install the package via composer:

This service provider must be installed.

You can publish the migration with:

The package assumes that your users table name is called "users". If this is not the case you should manually edit the published migration to use your custom table name.

After the migration has been published you can create the role- and permission-tables by running the migrations:

You can publish the config-file with:

This is the contents of the published config file:

Usage

First add the Spatie\Permission\Traits\HasRoles-trait to your User model.

This package allows for users to be associated with roles. Permissions can be associated with roles. A Role and a Permission are regular Eloquent-models. They can have a name and can be created like this:

The HasRoles adds eloquent relationships to your models, which can be accessed directly or used as a base query.

Using permissions

A permission can be given to a user:

A permission can be revoked from a user:

You can test if a user has a permission:

Saved permissions will be registered with the Illuminate\Auth\Access\Gate-class. So you can test if a user has a permission with Laravel's default can-function.

Using roles and permissions

A role can be assigned to a user:

A role can be removed from a user:

You can determine if a user has a certain role:

You can also determine if a user has any of a given list of roles:

You can also determine if a user has all of a given list of roles:

The assignRole, hasRole, hasAnyRole, hasAllRoles and removeRole-functions can accept a string, a Spatie\Permission\Models\Role-object or an \Illuminate\Support\Collection-object.

A permission can be given to a role:

A permission can be revoked from a role:

The givePermissionTo and revokePermissionTo-functions can accept a string or a Spatie\Permission\Models\Permission-object.

Saved permission and roles are also registered with the Illuminate\Auth\Access\Gate-class.

Using blade directives

This package also adds Blade directives to verify whether the currently logged in user has all or any of a given list of roles.

You can use Laravel's native @can directive to check if a user has a certain permission.

Extending

If you need to extend or replace the existing Role or Permission models you just need to keep the following things in mind:

Change log

Please see CHANGELOG for more information what has changed recently.

Testing

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Credits

This package is heavily based on Jeffrey Way's awesome Laracasts-lesson on roles and permissions. His original code can be found in this repo on GitHub.

Alternatives

About Spatie

Spatie is webdesign agency in Antwerp, Belgium. You'll find an overview of all our open source projects on our website.

License

The MIT License (MIT). Please see License File for more information.


All versions of laravel-permission with dependencies

PHP Build Version
Package Version
Requires php Version >=5.5.0
laravel/framework Version ^5.1.11
illuminate/contracts Version ^5.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package baklysystems/laravel-permission contains the following files

Loading the files please wait ....