Laravel-admin之自定义操作日志

laravel-admin是封装性极好的框架,自带的就有操作日志的记录,但是对于非开发人员可能看不懂这个日志,所以就想着给修改一下,以谁修改了什么,谁删除了什么,谁审核了什么,谁添加了什么类似,这样才能根据相应的操作者进行相应的处理,

一、Admin框架封装的操作日志逻辑

所谓的自定义功能,其实就是重写逻辑,那么重写就意味着要参考框架原本的逻辑,框架的操作日志逻辑请参考文件

\vendor\encore\laravel-admin\src\Controllers\LogController.php

可以看到逻辑如下:在这里插入图片描述
同样地,框架操作记录日志的中间件的逻辑也可以找到,具体逻辑请自行查看

\vendor\encore\laravel-admin\src\Middleware\LogOperation.php

二、自定义操作日志逻辑

上一步知道了框架封装的逻辑,那么这一步就来根据自己的逻辑,覆写原来的逻辑。
后台需要新增控制器、以及路由,这是在laravel-admin中新增功能的两个步骤

  • 1、覆写LogController.php
    在\app\Admin\Controllers目录下新建LogController.php文件,命名空间为

namespace app\Admin\Controllers;

然后将\vendor\encore\laravel-admin\src\Controllers\LogController.php文件内容拷贝过来,根据自己的需求,进行改写grid()方法逻辑

  • 2、在后台路由文件(\app\Admin目录下的routes.php)中,增加路由
$router->resource(/auth/'logs', LogController::class);

写在最后

在这里插入图片描述
如图所示,\vendor\encore\laravel-admin\src\Auth\Database目录下的OperationLog.php中,protected $fillable = [‘user_id’, ‘path’, ‘method’, ‘ip’, ‘input’]只定义这几个字段,且与数据库表admin_operation_log字段想对应。

  • 如果你想在插入数据库时,就修改数据记录的内容,那么记得覆写LogOperation.php内容,目录是
\vendor\encore\laravel-admin\src\Middleware\LogOperation.php

覆写结果以后,记得修改后台使用的中间件组,我是直接在

vendor/encore/laravel-admin/src/AdminServiceProvider.php

修改了$routeMiddleware的值
在这里插入图片描述

  • 如果是想记录一下新的内容,那么需新增字段,一定要在protected $fillable = [‘user_id’, ‘path’, ‘method’, ‘ip’, ‘input’];中添加相对应的字段,这样在laravel-admin才能相应展示该字段
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Laravel-Admin 是一个基于 Laravel 开发的后台管理框架,提供了丰富的快速构建后台管理系统所需的功能和组件。其中,自定义页面是 Laravel-Admin 框架中的一个重要特性,可以让开发者基于现有的框架组件构建自己需要的页面。 下面是使用 Laravel-Admin 构建自定义页面的详细步骤: 1. 创建自定义页面路由 在 `routes/admin.php` 文件中添加自定义页面的路由定义,如下所示: ```php Route::get('custom-page', 'CustomController@index'); ``` 2. 创建自定义页面控制器 在 `app/Admin/Controllers` 目录下创建名为 `CustomController.php` 的控制器文件,代码如下: ```php <?php namespace App\Admin\Controllers; use Encore\Admin\Controllers\AdminController; use Encore\Admin\Layout\Content; class CustomController extends AdminController { public function index(Content $content) { return $content ->header('自定义页面') ->description('这是一个自定义页面') ->body(view('admin.custom.index')); } } ``` 其中,`index()` 方法是自定义页面的入口方法,`Content` 类用于定义页面内容,`header()` 方法用于定义页面标题,`description()` 方法用于定义页面描述,`body()` 方法用于设置页面主体内容。 3. 创建自定义页面视图 在 `resources/views/admin/custom` 目录下创建名为 `index.blade.php` 的视图文件,代码如下: ```html @extends('admin::layouts.content') @section('content') <div class="row"> <div class="col-md-12"> <div class="box"> <div class="box-header with-border"> <h3 class="box-title">自定义页面</h3> </div> <div class="box-body"> <p>这是一个自定义页面</p> </div> </div> </div> </div> @stop ``` 其中,`@extends('admin::layouts.content')` 表示该视图继承了 Laravel-Admin 框架提供的布局文件,`@section('content')` 和 `@stop` 之间的内容是页面主体内容。 4. 登录 Laravel-Admin 后台 在浏览器中输入后台管理系统的地址,例如 `http://your-domain/admin`,使用管理员账号和密码登录后台管理系统。 5. 访问自定义页面 在 Laravel-Admin 后台管理系统中,点击左侧菜单栏中的 `自定义页面`,即可访问自定义页面。 至此,我们就成功地基于 Laravel-Admin 后台框架构建了一个简单的自定义页面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值