sbilyalov/yii2-softdelete

此包的最新版本(1.0.0)没有提供许可信息。

Yii2 框架的软删除行为

安装: 275

依赖: 0

建议者: 0

安全: 0

星标: 3

关注者: 0

分支: 1

公开问题: 0

类型:yii2-behavior

1.0.0 2016-03-23 12:16 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:20:43 UTC


README

此行为为您的活动记录添加了软删除功能

## 安装

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

运行

php composer.phar require  --prefer-dist sbilyalov/yii2-softdelete "*"

或添加

"sbilyalov/yii2-softdelete": "*"

到您的 composer.json 文件中。

使用方法

use sbilyalov\yii2\behaviors\SoftDelete;

public function behaviors ()
{
    return [
        SoftDeleteBehavior::className()
    ];
}

默认情况下,SoftDelete 行为将 is_deleted 属性填充为数字 - 1

如果您的属性名不同或您想使用不同的方式标记已删除记录,您可以根据以下配置 [[attribute]] 和 [[value]] 属性

use sbilyalov\yii2\behaviors\SoftDelete;
use yii\db\Expression;

public function behaviors ()
{
    return [
        [
            'class' => SoftDeleteBehavior::className(),
            'attribute' => 'deleted_time',
            'value' => new Expression('NOW()'),
            'restoreValue' => null
        ]
    ];
}

活动记录模型的附加功能

// soft delete model
$model->remove();

// delete soft-deleted model from database
$model->forceDelete();

// restore soft-deleted model
$model->restore();

// call SoftDelete::remove()
$model->delete();