Глобальный render type ?

Всем привет. Интересует следующее. Вот здесь https://github.com/samdark/yii2-cookbook/blob/master/book/response-formats.md нашел интерсную вещь. Но вопрос в том как быть если отдаем html ? Т.е. к примеру сейчас приходится писать так в каждом экшене:




public function actionIndex()

{

    $items = Items::find()->all();


    if( $items !== null )

    {

        if ( Yii::$app->request->isAjax )

        {

            return $this->renderAjax( 'items/index', [ 'items' => $items ] );

        }

        else

        {

            return $this->render( 'items/index', [ 'items' => $items ] );

        }

    }

}



Можно как-то глобально задать это, что бы не проверять в каждом экшене ajax или нет ? Т.е. где-то указали если ajax используем renderAjax, если обычный запрос, отдаем через render. А в самом экшене писать вроде такого:




public function actionIndex()

{

    $items = Items::find()->all();


    if( $items !== null )

    {

        return $this->view( 'items/index', [ 'items' => $items ] );

    }

}



P.S: можно как-то так:

К примеру в BaseController




public function view( $partial, $data )

{

    if ( Yii::$app->request->isAjax )

    {

        return $this->renderAjax( $partial, $data );

    }

    else

    {

        return $this->render( $partial, $data );

    }

}



Но мне не очень нравиться такой вариант. Что-то подсказывает что в Yii2 из коробки есть более правильное решение ?

Нет. Из коробки нет.

Понятно, спасибо.