模型事件

模型事件是指模型在执行写入, 修改, 删除操作的时候触发的行为事件

方法列表

事件名称 事件说明 参数
onBeforeInsert 插入前事件 $model
onAfterInsert 插入后事件 $model, $res
onBeforeUpdate 更新前事件 $model
onAfterUpdate 更新后事件 $model, $res
onBeforeDelete 删除前事件 $model
onAfterDelete 删除后事件 $model, $res

::: tip $model 当前模型实例

$res 当前行为执行结果, 当执行失败时类型统一为boolfalse, 当执行成功时有两种情况:

执行onAfterDelete事件: int型 影响记录数, 其他事件: booltrue :::

::: warning 如果ORM版本低于1.1.19将无法使用模型事件 :::

  1. class User extends AbstractModel
  2. {
  3. /**
  4. * @var string
  5. */
  6. protected $tableName = 'users';
  7. public static $insert = false;
  8. public static $update = false;
  9. public static $delete = false;
  10. protected static function onBeforeInsert($model)
  11. {
  12. return self::$insert;
  13. }
  14. protected static function onAfterInsert($model, $res)
  15. {
  16. }
  17. protected static function onBeforeUpdate($model)
  18. {
  19. return self::$update;
  20. }
  21. protected static function onAfterUpdate($model, $res)
  22. {
  23. }
  24. protected static function onBeforeDelete($model)
  25. {
  26. return self::$delete;
  27. }
  28. public static function onAfterDelete($model, $res)
  29. {
  30. }
  31. }