# el-admin
**Repository Path**: pltrue/el-admin
## Basic Information
- **Project Name**: el-admin
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2023-10-17
- **Last Updated**: 2025-04-10
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## About ElAdmin
简体中文 | [English](./README_EN.md)
### 简介
> El-admin 是一个Laravel的后台权限扩展包,它提供了权限管理必要的 `API`。配合它提供的前端脚手架,可以很方便快速的搭建前后端分离的rbac管理后台。
### 依赖
* PHP >= 8.0
* Laravel 9~10
### 安装
```shell
composer require latent/el-admin:dev-master
```
### 配置发布
```shell
php artisan vendor:publish --provider="Latent\ElAdmin\ElAdminServiceProvider" --force
```
### 执行构建脚本
```shell
php artisan el-admin:install
```
### 发布相关配置文件

### `El-Admin` 提供了路由文件 `routes/admin.php`。
> 通过继承控制器可以很方便的重写相关接口,提高灵活性以及扩展性。

### `El-Admin` 基于RBAC模型权限实现权限管理。
> 用户对于角色、角色对于权限属于多对多关系。通过两个中间表进行关联。

### `El-Admin` 提供了配置文件 `config/el_admin.php`,对于模型、日志、菜单缓存可以进行灵活配置。
```php
*
* This source file is subject to the MIT license that is bundled
* with this source code in the file LICENSE.
*/
return [
/*
|--------------------------------------------------------------------------
| el-admin logo
|--------------------------------------------------------------------------
|
*/
'logo' => 'logo.png',
/*
|--------------------------------------------------------------------------
| el-admin jwt guard
|--------------------------------------------------------------------------
|
*/
'guard' => 'api',
/*
|--------------------------------------------------------------------------
| el-admin prem middleware
|--------------------------------------------------------------------------
|
| el-admin Related http middleware
|
*/
'middleware' => [
// el-admin http middleware for permission control verification
'rbac' => Latent\ElAdmin\Middleware\RbacMiddleware::class,
],
// Whether to enable database logging
'log' => true,
// Log filtering request method records
'log_filter_method' => [
Latent\ElAdmin\Enum\MethodEnum::GET,
Latent\ElAdmin\Enum\MethodEnum::OPTIONS,
Latent\ElAdmin\Enum\MethodEnum::HEAD,
],
'log_class' => Latent\ElAdmin\Services\LogWriteService::class,
/*
|--------------------------------------------------------------------------
| el-admin database settings
|--------------------------------------------------------------------------
|
| Here are database settings for el-admin builtin model & tables.
|
*/
'database' => [
// user table and user models
'users_table' => 'admin_users',
'users_model' => Latent\ElAdmin\Models\AdminUser::class,
'user_roles_table' => 'admin_user_roles',
'user_roles_model' => Latent\ElAdmin\Models\AdminUserRole::class,
'roles_table' => 'admin_roles',
'roles_model' => Latent\ElAdmin\Models\AdminRole::class,
'role_menus_table' => 'admin_role_menus',
'role_menus_model' => Latent\ElAdmin\Models\AdminRoleMenu::class,
'menus_table' => 'admin_menus',
'menus_model' => Latent\ElAdmin\Models\AdminMenu::class,
'log_table' => 'admin_logs',
'log_model' => Latent\ElAdmin\Models\AdminLog::class,
'connection' => 'mysql',
],
/*
|--------------------------------------------------------------------------
| el-admin menus settings
|--------------------------------------------------------------------------
|
| el-admin menus settings
|
*/
'menus' => [
/* @var bool Whether to enable menu caching */
'cache' => false,
/* @var int Cache expiration time (minutes) */
'ttl' => 60,
/* @var string cache disk */
'disk' => 'file',
'prefix' => 'el:admin:menu_',
],
];
```
### 其它命令
```shell
php artisan el-admin:clear //清除全部菜单缓存
php artisan el-admin:clear {id} //清除指定用户菜单缓存
```
### 前端示例
[Vue3实现的管理后台](https://github.com/pl1998/basic)
## License
MIT License