gongyuwen / Laravel-ACL by gongyuwen

acl plugin for laravel
62
3
0
Package Data
Maintainer Username: gongyuwen
Maintainer Contact: gongyuwen_cu@163.com (gongyuwen)
Package Create Date: 2017-08-03
Package Last Update: 2019-12-25
Language: PHP
License: MIT
Last Refreshed: 2025-02-06 03:06:52
Package Statistics
Total Downloads: 62
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 3
Total Watchers: 0
Total Forks: 0
Total Open Issues: 0

Laravel-ACL

ACL Plugins for Laravel

Installation

Use [Composer] to install the package:

$ composer require gongyuwen/laravel-acl

Usage

1.register command

//App\Console\Kernel.php

protected $commands = [    
    \LaravelAcl\Console\MakeAclCommand::class
];

2.use command

$ php artisan make:acl

3.edit config/acl.php

/**
* Example:
* URL: admin/list
* ACTION: Administrator\DefaultController@index
* METHOD: get,post
* ALLOW: member, admin
* DENY: ACL_NO_ROLE
* MIDDLEWARE: acl
* ROUTE NAME: adminlist
**/
return [
    'menus' => [
        'admin' => [
            'namespace' => 'Administrator',
            'action'    => 'DefaultController@index',
            'uri'       => 'list',
            'method'    => 'get,post',
            'allow'     => 'member, admin',
            'deny'      => 'ACL_NO_ROLE',            
            'middleware'=> 'acl',
            'name'      => 'adminlist'
        ]
    ]
];

Method

Method | Description | Required | Type | Explain
------------------------| --------------|------------|--------|---------------------------------------------------------- \ACL::hasAccess() | $action | Yes | Mixed | 1.String use '@', for example: DefaultController@index 2.String use '/', for example: users/detail/{user} 3.Illuminate\Routing\Route, for example: Route::current() \ACL::sidebars() | ...$menuname | Yes | string | the key in config/acl.php menus group
\ACL::sidebarsExcept() | ...$menuname | No | string | the key in config/acl.php menus group