Yii2.0 TimestampBehavior的使用

应用场景:   在我们的Model开发中, 当你添加或者修改一条数据时, 你会发现很多都会涉及到创建时间和修改时间.

例如: 我们插入数据要添加"创建时间, 修改时间", 更新数据时要更新"修改时间". 那么多数据表的操作都重复涉及,

你会不会发现太麻烦了? 下面我就介绍一种时间戳行为, 他可以自动对某些字段进行修改的行为。

在我们的模型类中调用   yii\behaviors\TimestampBehavior;

use Yii;
use yii\behaviors\TimestampBehavior;
class BaseModel extends \yii\db\ActiveRecord
{
    public function behaviors()
    {
        return [
            [
            'class' => TimestampBehavior::className(),
            'createdAtAttribute' => 'created_at',// 自己根据数据库字段修改
            'updatedAtAttribute' => 'updated_at', // 自己根据数据库字段修改, // 自己根据数据库字段修改
            'value'   => function(){return date('Y-m-d H:i:s',time());},
            ],
        ];
    }
}

 

我们使用的类要继承这个BaseModel,并且使用类对应的表要有相应的这两个字段就行了


 

posted @ 2017-08-09 17:41  tengjian  阅读(463)  评论(0编辑  收藏  举报