public function behaviors() { return [ [ 'class' => TimestampBehavior::className(), 'attributes' => [ ActiveRecord::EVENT_BEFORE_INSERT => ['created_at', 'updated_at'], ActiveRecord::EVENT_BEFORE_UPDATE => ['updated_at'], ], ], ]; }
当记录插入时,行为将当前时间戳赋值给 created_at 和 updated_at 属性;
当记录更新时,行为将当前时间戳赋值给 updated_at 属性。
请问,上面代码attributes中的配置项是怎么起作用的。
public function behaviors() { return [ [ 'class' => TimestampBehavior::className(), 'attributes' => [ ActiveRecord::EVENT_BEFORE_INSERT => ['created_at', 'updated_at'], ActiveRecord::EVENT_BEFORE_UPDATE => ['updated_at'], ], ], ]; }
当记录插入时,行为将当前时间戳赋值给 created_at 和 updated_at 属性;
当记录更新时,行为将当前时间戳赋值给 updated_at 属性。
请问,上面代码attributes中的配置项是怎么起作用的。
理解行为和事件
通俗来说,背后的逻辑就是通过上面的代码,为ar绑定了两个事件,分别是beforeInsert 和 'beforeUpdate',
当这两个事件触发时,调用回调出里函数,设置属性值
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号