Yii2 afterDelete不会被调用

时间:2017-07-07 07:22:59

标签: php yii2

我的应用程序中有用户页面。当我在用户界面中删除用户时,同样的用户记录也要在其他表中删除。我已经完成了createCommand.But函数本身不会被调用。我有UserController和User模型。

控制器:

myCondition(X(k)) = true

型号:

public function actionDelete($id)
{
    $user=$this->findModel($id)->delete();  
    return $this->redirect(['index']);
}

1 个答案:

答案 0 :(得分:2)

您的afterDelete未被调用,因为您正在直接执行SQL查询以执行删除操作。 而你在模型中写了afterDelete。

为了完成这项工作,您需要查找并删除模型的对象。

$model = TshirtAccess::find()->where(['userid' => $user_id])->one(); //all()
$model->delete(); // this will trigger your afterDelete function and execute your code.

这将解决您的问题。