Сейчас есть в beforeAction:
Код: Выделить всё
$transaction = Yii::$app->db->beginTransaction();
$this->on(self::EVENT_AFTER_ACTION, [$transaction, 'commit']);
return parent::beforeAction($action);
Код: Выделить всё
History::write(
$this->historyTable,
$entityId,
$action->id,
$historyData
);
Получается, что если в afterAction базового класса (кастомный) случился exception, то запись удаляется, но ответ будет 500 с ошибкой. Нужно, чтобы запись не удалялась.