acmetemplate / laravel-admin

dev-master 2022-10-04 10:00 UTC

README

用于管理用户、角色、权限和CRUD的行政面板。

需求

Laravel >=7
PHP >= 7.0
Now we Support Laravel 9

功能

  • 用户、角色和权限管理器
  • CRUD 生成器
  • 活动日志
  • 页面 CRUD
  • 设置

安装

  1. 运行

    composer require acmetemplate/laravel-admin
    
  2. 安装管理包。

    php artisan laravel-admin:install
    

    服务提供者将自动发现。

  3. 请确保您的用户模型具有 HasRoles 特性 app/Models/User.php

    class User extends Authenticatable
    {
        use Notifiable, HasRoles;
    
        ...
  4. 现在您可以通过生成器工具轻松生成 CRUD。

注意:如果您使用 Laravel 7+,则使用 bootstrap 框架构建身份验证以获得更好的体验。

用法

  1. 创建一些权限。

  2. 创建一些角色。

  3. 将权限分配给角色。

  4. 创建具有角色的用户。

  5. 要检查认证用户的角色,请参见以下内容

    // Add role middleware in app/Http/Kernel.php
    protected $routeMiddleware = [
        ...
        'role' => \App\Http\Middleware\CheckRole::class,
    ];
    // Check role anywhere
    if (Auth::check() && Auth::user()->hasRole('admin')) {
        // Do admin stuff here
    } else {
        // Do nothing
    }
    
    // Check role in route middleware
    Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => ['auth', 'role:admin']], function () {
       Route::get('/', ['uses' => 'AdminController@index']);
    });
    
    // Check permission in route middleware
    Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => ['auth', 'can:write_user']], function () {
       Route::get('/', ['uses' => 'AdminController@index']);
    });
  6. 要检查权限,请参见以下内容

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

有关ACL的更多信息,请参阅此处

有关活动日志,请参阅 spatie/laravel-activitylog 文档

屏幕截图

users

activity log

generator

settings

作者

[Mohamed Hassan] 📧 发邮件给我

##参考

Sohel Amin 📧 发邮件给我

许可

本项目采用MIT许可 - 请参阅许可文件获取详细信息