tirjok/admin-generator

Admin generator package for laravel.

v0.1.1 2017-01-29 15:45 UTC

This package is not auto-updated.

Last update: 2024-04-22 12:51:44 UTC


README

An admin panel for managing users, roles, permissions & crud.

Requirements

Laravel >=5.1
PHP >= 5.5.9

Installation

  1. Run

     composer require tirjok/admin-generator
    
  2. Add the service provider to config/app.php.

     'providers' => [
         ...
    
         Tirjok\AdminGenerator\AdminGeneratorServiceProvider::class,
         Tirjok\CrudGenerator\CrudGeneratorServiceProvider::class,
         Collective\Html\HtmlServiceProvider::class,
     ],
    
  3. Add laravelcollective/html aliases to config/app.php file.

    'aliases' => [

     ...
    
     'Form' => Collective\Html\FormFacade::class,
     'HTML' => Collective\Html\HtmlFacade::class,
    

    ],

    
    
  4. Run `composer dump-autoload`

  5. Install the admin package.

     php artisan admin-generator:install
    
  6. Make sure your user model's has a `HasRoles` trait app/User.php.

     class User extends Authenticatable
     {
         use Notifiable, HasRoles;
    
         ...
    
  7. You can generate CRUD easily through generator tool now.

Usage

  1. Create some roles.

  2. Create some permissions.

  3. Give permission(s) to a role.

  4. Create user(s) with role.

  5. For checking authenticated user's role see below:

     // Check role anywhere
     if(Auth::check() && Auth::user()->hasRole('admin')) {
         // Do admin stuff here
     } else {
         // Do nothing
     }
    
     // Check role in route middleware
     Route::group(['prefix' => 'admin', 'middleware' => ['auth', 'roles'], 'roles' => 'admin'], function () {
        Route::get('/', ['uses' => 'AdminController@index']);
     });
    
  6. For checking permissions see below:

     if($user->can('permission-name')) {
         // Do something
     }
    

Learn more about ACL from here