【发布时间】:2012-09-25 10:20:01
【问题描述】:
我有一个用户模型,它捆绑在我的 Yii 应用程序上安装的模块中。这个模块是第三方的,我不想修改它的代码。
我还有一个 Cv 模型,它与 User 模型具有 BELONGS_TO 关系。
我的问题是:删除用户后如何删除简历?
我知道我可以在 mysql 上使用on delete cascade ... 来实现这一点。但是,我确实需要删除其他数据,例如照片、文件等。
我的尝试
我创建了一个预加载在我的应用程序中的组件。此组件附加到 onAfterDelete 事件
class EventListener extends CComponent
{
public function init() {
Yii::import("application.modules.users.models.User");
User::model()->attachEventHandler('onAfterDelete', array($this, 'deleteUser'));
}
public function deleteUser($event)
{
// stuff here ...
}
}
但是这不起作用。
有什么建议吗?
【问题讨论】:
-
查看 User 类中的任何 'on%' 方法以及它的父级,以了解该模型支持哪些事件。
-
我通常创建新类
myUser扩展User我写下我的 onAfterDelete -
@Sergey 当一个用户模型被删除时,onAfterDelete 事件不会自动引发吗?
标签: yii yii-components yii-events