Laravel 自动记录用户行为扩展 action-log

Laravel action-log 扩展

给大家推荐我个人写的一个laravel自动记录用户行为的扩展。具体使用请看下文详细介绍。

安装

1.方法一:在composer.json中加入

{
    "require": {
        "luoyangpeng/action-log": "~1.0"
    }
}

2.方法二:

composer require luoyangpeng/action-log 

使用

1.在config/app.php配置文件中加入

 'providers' => [
        // ...
        'luoyangpeng\ActionLog\ActionLogServiceProvider',
    ]

'aliases' => [
        // ...
        'ActionLog' => 'luoyangpeng\ActionLog\Facades\ActionLogFacade',
    ]

配置

1.发布配置文件

php artisan vendor:publish

2.config/actionlog.php配置文件中加入要记录的模型

return [
        '\App\Models\Users',
    ];

执行数据表迁移文件

php artisan migrate

主动记录用户行为

use ActionLog
//$type为操作日志类型 比如登录 添加 删除...
ActionLog::createActionLog($type,$content);

Demo

//update

$users = Users::find(1);
$users->name = "myname";
$users->save();

//add

$users = new Users();
$users->name = "myname";
$users->save()

//delete

Users:destroy(1);

注意

使用insert插入数据不会自动记录日志

项目github地址

https://github.com/luoyangpeng/action-log
如果你觉得这个扩展对你有帮助,欢迎star

本帖已被设为精华帖!
本帖由 Summer 于 2年前 加精
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 5
Summer

很实用的扩展包 :+1:

不过数据库字段:username 要考虑用户修改用户名的使用场景的话,维护起来会比较蛋疼:

https://github.com/luoyangpeng/action-log/blob/master/src/migrations/2016_07_07_025112_crate_action_log_table.php#L18

2年前

@Summer 我开始写这个的目的是用来记录后台操作日志,考虑到后台管理员改名字的可能性比较低。不行的话可以联表查询;)

2年前

如果更新使用update、删除使用delete的话它不会自动记录?怎么办?

1年前

@jasester 增加事件监听,参考Laravel Eloquent 模型事件。有时间我研究改进下。

1年前
wujunze

这个好 正好用到?

11个月前

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!