tugmaks/yii2-creator-behavior

Yii2 的 Creator 行为

安装: 268

依赖项: 0

建议者: 0

安全: 0

星星: 0

观察者: 1

分支: 0

开放问题: 0

类型:yii2-extension

dev-master 2016-05-30 09:58 UTC

This package is auto-updated.

Last update: 2024-09-24 20:23:01 UTC


README

Yii2 的 Creator 行为

安装

安装此扩展的首选方式是通过 composer

运行以下命令之一:

php composer.phar require --prefer-dist tugmaks/yii2-creator-behavior "*"

或者将以下内容添加到您的 composer.json 文件的 require 部分:

"tugmaks/yii2-creator-behavior": "*"

使用方法

CreatorBehavior 会自动填充指定属性为当前用户 ID。

要使用 CreatorBehavior,请将以下代码插入您的 ActiveRecord 类中:

  use tugmaks\behaviors\CreatorBehavior;
 
  public function behaviors()
  {
      return [
          CreatorBehavior::className(),
      ];
  }

默认情况下,当关联的 AR 对象正在插入时,CreatorBehavior 会将 created_byupdated_by 属性填充为当前用户 ID;当 AR 对象正在更新时,它会将 updated_by 属性填充为当前用户 ID。用户 ID 值通过 Yii::$app->user->id 获取。

为了使上述实现与 MySQL 数据库兼容,请将列(created_byupdated_by)声明为 int(11)。

如果您的属性名称不同或您想使用不同的方式检索用户 ID,您可能需要像以下这样配置 [[createdByAttribute]]、[[updatedByAttribute]] 和 [[value]] 属性:

  public function behaviors()
  {
      return [
          [
              'class' => CreatorBehavior::className(),
              'createdByAttribute' => 'creator_id',
              'updatedByAttribute' => 'updater_id',
              'value'=>function($event){
                   return \Yii::$app->user->identity->getCustomId();
               }
          ],
      ];
  }