elrod/user-activity

该包最新版本(2.1.0)没有可用的许可信息。

记录其应用程序的用户活动。

2.1.0 2022-06-24 00:04 UTC

This package is not auto-updated.

Last update: 2024-09-30 02:13:07 UTC


README

在其自己的数据库中记录应用程序用户的活动

安装

  • 下载项目

    composer require elrod/user-activity

  • 数据库

    创建数据库 user_activity_log 创建表 activity_log ( id bigint(20) unsigned NOT NULL AUTO_INCREMENT, component text COLLATE utf8_spanish_ci DEFAULT NULL, data_json_old longtext COLLATE utf8_spanish_ci DEFAULT NULL, data_json_updated longtext COLLATE utf8_spanish_ci DEFAULT NULL, table_name varchar(255) COLLATE utf8_spanish_ci DEFAULT NULL, table_column_id varchar(255) COLLATE utf8_spanish_ci DEFAULT NULL, model_name varchar(500) COLLATE utf8_spanish_ci DEFAULT NULL, route varchar(500) COLLATE utf8_spanish_ci DEFAULT NULL, description text COLLATE utf8_spanish_ci DEFAULT NULL, context varchar(40) COLLATE utf8_spanish_ci DEFAULT NULL, response_code varchar(255) COLLATE utf8_spanish_ci DEFAULT NULL, response_message text COLLATE utf8_spanish_ci DEFAULT NULL, type_activity varchar(255) COLLATE utf8_spanish_ci DEFAULT NULL, created_at datetime DEFAULT NULL ON UPDATE current_timestamp(), user_id bigint(20) DEFAULT NULL, user longtext COLLATE utf8_spanish_ci DEFAULT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

  • 简单示例

    log('看,我记录了一些东西'); $activity->save();
  • 高级示例

    use Elrod\UserActivity\Activity;

      $user = array(
      	'id'=> $_SESSION["user_id"],
      	'name' => $_SESSION["user_name"]
      );
      
      //to register
      $activity = new Activity;
      $activity->modelOn(Product::class,$product->id);
      $activity->causedBy($user);
      $activity->routeOn(route('product_create'));
      $activity->componentOn('product-create-form');
      $activity->dataOld($product);
      $activity->logType('create');
      $activity->log('Look, I logged something');
      $activity->save();
    

在dataOld中注册表的原始数据,可以在我们注册新记录时使用它;dataUpdated可以在我们进行更改时使用,例如在

$data_old = array('name'=>'Juan Lopez','number'=>'12345678') //lo que estubo antes
$data_update = array('name'=>'Daniel Lopez ','number'=>'87654321') //los nuevos cambios
$activity->dataOld($data_old); //what was before
$activity->dataUpdated($data_update); //the new changes

用于按活动ID列表和搜索的方法

$activity->getAll();

$activity->getById($id)

  • 显示数据

示例

$activity = new \Elrod\UserActivity\Activity();
$activity->model_name();
$activity->description();
$activity->data_json_old();
$activity->data_json_updated();
$activity->table_column_id();
$activity->user();
$activity->created_at();

?>
<div class="container">
<h1>Lista de Actividades de usuario</h1>
    <?php echo $activity->paginate(10); ?>
</div>