Прежде чем разрабатывать какой-то более-менее большой продукт на фреймворке. Я бы посоветовал, углубленно изучить его возможности.
Сегодня, речь пойдет об экшинах. Но не о тех что "жестко" прописываются в наших контроллерах. А тех, которые можно использовать в разных контроллерах, подключая через метод контроллера "actions()":
public function actions()
{
$actions = parent::actions();
$actions['aj-avatar-upload'] = [
'class' => 'commonactionuserAjaxAvatarUploadAction',
];
$actions['aj-avatar-delete'] = [
'class' => 'commonactionuserAjaxAvatarDeleteAction',
];
return $actions;
}
С подобным "действием" мы сталкиваемся еще в самом начале своего пути, открывая файл конфига, где прописывается action ошибки:
'errorHandler' => [ 'errorAction' => 'site/error', ],
