Akellacom дело говорит, только все это можно делать и в однм контроллере - зачем нам плодить еще один идентичный контроллер с такой же логикой, но с частичным рендером страницы. Тоесть, нужно проверть Ajax это запрос или нет. Если Ajax, то рендерить только саму вьюху (renderPartial), если же это не Ajax, то рендерить всю страницу вместе с заголовками.
В Yii1 делалось это так:
$viewFile = 'viewFile';
$viewData = array('model' => $model,);
if(Yii::$app->request->isAjaxRequest){
$this->renderPartial($viewFile, $viewData);
}else{
$this->render($viewFile, $viewData);
}
Дело в том, что всякие фичи типа Ajax update page если при получении через ajax-запрос новых данных они получают всю страницу (шапку, садбары, контент, футтеры, CSS-, JS-файлы), то они вырезають только ту часть, которую нужно обновить и обновляют ее. Для того, чтобы юзеру не гонять по http лишний траффик, следует проверять Ajax ли это запрос или нет. Вот линк на документацию:
тыць, но может возникнуть проблема из-за тонкостей заголовков -
тыць
Сорри, в Yii2 еще не приходилось делать подобного, но уверен, что реализация на 90% аналогичная с Yii1