one-art/itchanged

yii1的扩展

安装: 94

依赖: 0

建议者: 0

安全性: 0

星标: 2

关注者: 3

分支: 0

公开问题: 0

类型:扩展

dev-master 2014-09-23 09:10 UTC

This package is not auto-updated.

Last update: 2024-09-24 02:41:01 UTC


README

这个扩展帮助在更新模型状态前保存状态,并检查哪些属性发生了变化。

例如,你想检查用户名是否改变,并在更新一些缓存等之后。

public function beforeSave() {
    if($this->itChanged('username'))
        echo 'changed';
    else
        echo 'not changed';
}

你还可以看到它是如何改变的。使用方法$this->getModelState()。此方法返回关联数组:[ %attribute_name% => %attribute_value%, ... ]

安装

我建议使用特性。(仅适用于PHP >= 5.4.0)例如

class User extends CActiveRecord {
    use ItChangedExtension\ItChangedTrait;
}

简单,在扩展功能后使用你的类。

但扩展支持旧的方式通过扩展使用。如果你有一个扩展CActiveRecord的模型,你只需将扩展改为ItChangedActiveRecord类,与CForm和CModel相同。

如果你不使用composer导入文件,只需在yii设置之前在index.php中添加include_once。

通过composer安装

{
 "require": {
 	"one-art/itchanged": "*"
 }
}