Yii2 Active Record 的生命周期

当你实现各种功能的时候,会发现了解 Active Record 的生命周期很重要。 在每个生命周期中,一系列的方法将被调用执行,您可以重写这些方法 以定制你要的生命周期。您还可以响应触发某些 Active Record 事件 以便在生命周期中注入您的自定义代码。这些事件在开发 Active Record 的 行为时特别有用, 通过行为可以定制 Active Record 生命周期的 。

Active Record 的生命周期 大致划分为以下几种:

  • 实例化生命周期(New Instance Life Cycle)

  • 查询数据生命周期(Querying Data Life Cycle)

  • 保存数据生命周期(Saving Data Life Cycle)

  • 删除数据生命周期(Deleting Data Life Cycle) <

  • 刷新数据生命周期(Refreshing Data Life Cycle)

以上内容来自 Yii2.0权威指南 ,更多介绍请参考 Active Record 的生命周期

以下为 Acative Record 的各种事件

/**
 * @event Event an event that is triggered when the record is initialized via [[init()]].
 */
const EVENT_INIT = 'init';
/**
 * @event Event an event that is triggered after the record is created and populated with query result.
 */
const EVENT_AFTER_FIND = 'afterFind';
/**
 * @event ModelEvent an event that is triggered before inserting a record.
 * You may set [[ModelEvent::isValid]] to be `false` to stop the insertion.
 */
const EVENT_BEFORE_INSERT = 'beforeInsert';
/**
 * @event AfterSaveEvent an event that is triggered after a record is inserted.
 */
const EVENT_AFTER_INSERT = 'afterInsert';
/**
 * @event ModelEvent an event that is triggered before updating a record.
 * You may set [[ModelEvent::isValid]] to be `false` to stop the update.
 */
const EVENT_BEFORE_UPDATE = 'beforeUpdate';
/**
 * @event AfterSaveEvent an event that is triggered after a record is updated.
 */
const EVENT_AFTER_UPDATE = 'afterUpdate';
/**
 * @event ModelEvent an event that is triggered before deleting a record.
 * You may set [[ModelEvent::isValid]] to be `false` to stop the deletion.
 */
const EVENT_BEFORE_DELETE = 'beforeDelete';
/**
 * @event Event an event that is triggered after a record is deleted.
 */
const EVENT_AFTER_DELETE = 'afterDelete';
/**
 * @event Event an event that is triggered after a record is refreshed.
 * @since 2.0.8
 */
const EVENT_AFTER_REFRESH = 'afterRefresh';

关于极客返利

极客返利 是由我个人开发的一款网课返利、返现平台。包含 极客时间返现、拉勾教育返现、掘金小册返现、GitChat返现。目前仅包含这几个平台。后续如果有需要可以考虑其他平台。 简而言之就是:你买课,我返现。让你花更少的钱,就可以买到课程。

https://geekfl.com

https://geek.laravelcode.cn

版权许可

本作品采用 知识共享署名 4.0 国际许可协议 进行许可。

转载无需与我联系,但须注明出处,注明文章来源 Yii2 Active Record 的生命周期

联系我

编程怪事
暂无回复
0 / 180